working with soapui properties soapui tutorial 8
이 튜토리얼은 SoapUI 속성에 관한 것입니다. 지난 SoapUI 튜토리얼에서 우리는 Groovy 스크립트에 속성을 추가하는 방법 .
속성 비누 변수 / 파라미터와 유사하며이 튜토리얼에서는 서비스 요청에서 하나를 사용하고 스크립팅을 통해 응답 값을 할당하는 방법에 대해 설명합니다. 나중에 속성 이전 테스트 단계로 이동 한 다음 속성을 가져옵니다.
이것은 우리의 8 번째 튜토리얼입니다. SoapUI 온라인 교육 시리즈.
이 SoapUI 튜토리얼에서 무엇을 배울 수 있습니까?
- 재산의 다른면
- 서비스 요청에 속성 통합
- 속성 이전 테스트 단계 이해
- 외부에서 속성로드
두 가지가있다SoapUI의 속성 유형:
- 기본 속성 : SoapUI 설치에 포함됩니다. 일부 기본 속성을 편집 할 수 있지만 전부는 아닙니다.
- 사용자 정의 / 사용자 정의 속성 : 이는 글로벌, 프로젝트, 테스트 스위트, 테스트 케이스 또는 테스트 단계와 같이 필요한 모든 수준에서 당사에 의해 정의됩니다.
대부분의 경우 속성은 데이터 저장 및 검색 테스트 케이스를 실행하는 동안. 내부적으로 속성은 값을 키 쌍 형식으로 저장합니다.
예를 들면 , 아래 문에서“Local_Property_FromCurrency”는 키 이름이고“USD”는 값을 나타냅니다. 속성 값에 액세스하려면 속성 이름을 사용해야합니다.
testRunner.testCase.testSteps [ 'Properties']. setPropertyValue
( ' Local_Property_FromCurrency ', ‘USD’ )
학습 내용 :
SoapUI Pro의 다양한 속성 수준
SoapUI Pro의 다양한 속성 수준에 대해 논의하겠습니다. SoapUI에는 세 가지 수준의 속성을 사용할 수 있습니다.
레벨 1. 프로젝트 및 사용자 지정 속성
이 수준에서 속성은 두 섹션으로 나뉩니다. 프로젝트 속성 및 사용자 지정 속성입니다. 프로젝트 이름을 클릭하면 네비게이터 패널 하단에 나타납니다. 프로젝트 속성 섹션에는 프로젝트 생성 중에 생성되는 기본 속성 (예 : 이름, 설명, 파일 등)이 있습니다.
자체 속성을 생성하기 위해 사용자 지정 속성 탭을 사용할 수 있습니다. 더하기 아이콘을 클릭하여 속성을 만듭니다.
제거, 위로 이동, 아래로 이동 및 추가 옆 정렬과 같은 다른 많은 옵션을 사용할 수 있습니다. 프로젝트 내의 모든 섹션 (테스트 스위트, 테스트 케이스)에서 원하는 수의 사용자 지정 속성을 추가하고 사용할 수 있습니다.
2 단계. 테스트 스위트 및 사용자 지정 속성
이러한 속성은 테스트 스위트에서만 볼 수 있습니다. 테스트 스위트는 여러 속성을 포함 할 수 있으며 해당 테스트 스위트에 속하는 모든 테스트 단계에서 액세스 할 수 있습니다.
프로젝트 아래의 각 테스트 스위트 이름을 클릭하면 테스트 스위트 속성이 나타납니다. 필요에 따라 사용자 지정 속성을 추가하려면 사용자 지정 속성 탭을 클릭하고 그 아래에있는 '+'기호를 클릭합니다.
속성 # 3. 테스트 케이스 및 사용자 지정 속성
테스트 케이스 속성은 테스트 케이스 내에서 액세스 할 수 있습니다. 다른 테스트 케이스 단계 나 프로젝트의 테스트 스위트에서는 액세스 할 수 없습니다.
.torrent를 여는 방법
예제가있는 속성에 대한 자세한 내용
속성은 끝점, 로그인 세부 정보, 헤더 정보 및 도메인 등을 저장할 수 있습니다. 속성에서 데이터를 쓰고 읽는 방법에 대해 논의했지만 아직 예제를 통해이 항목에 대해 자세히 설명하지 않습니다.
위에서 설명한 속성 수준은 스크립팅에서 데이터를 읽는 데 사용됩니다.
#1. 읽기 속성 :
groovy 스크립트에서 속성을 읽는 방법을 살펴 보겠습니다. 다른 레벨 속성에 액세스하기위한 구문은 다음과 같습니다.
프로젝트 : 구문 : $ {# 프로젝트 이름 # 값}
예:
데프 홍보 ojectPro = testRunner.testC ...에 se.testSuite.project.getPropertyValue
(“Project_Level_Property”)
“Project_Level_Property”)
log.info (projectPro)
테스트 스위트 : 구문 : $ {# TestSuite # 가치}
예:
데프 testP ro = testRunner.testCase.testSuite.getPropertyValue (‘Testsuite_Property’)
log.info (testPro)
테스트 케이스 : 구문 : $ {# TestCase # 값}
예:
데프 테스트 casePro = testRunner.testCase.getPropertyValue (‘Testcase_Property’)
log.info (testcasePro)
아래 스크린 샷을 참조하십시오.
# 2. 속성에 쓰기 :
이를 위해 우리는 setPropertyValue 방법.
통사론: setPropertyValue ( '속성 이름', '값')
알 수없는 속성에 값을 할당하면 SoapUI가 이러한 속성을 새로 만듭니다. 기존 속성의 경우 할당 중에 값을받습니다.
#삼. 스크립트를 통해 속성 제거 :
속성 패널에서 속성 이름을 마우스 오른쪽 버튼으로 클릭하면됩니다. 그런 다음 상황에 맞는 메뉴에서 제거 옵션을 클릭합니다.
사용자 정의 특성을 제거하기위한 스크립트를 사용하여이를 수행하려면 프로젝트, 테스트 스위트 또는 테스트 케이스 레벨에 대해 각각 다음 문을 사용하십시오.
testRunner.testCase.testSuite.project.removeProperty (“Testcase_Property”);
testRunner.testCase.testSuite.removeProperty (“Testcase_Property”);
testRunner.testCase.removeProperty ( 'Testcase_Property');
위의 스크립트는 각 속성에 대해 이러한 단계를 여러 번 반복해야하므로 각 수준에 여러 속성이있을 때 최적이 아닙니다. 대안은 아래와 같이 스크립트를 통해 속성을 반복하는 것입니다.
testRunner.testCase.properties.each
{
키, 값->
testRunner.testCase.removeProperty (키)
}
위의 스크립트는 테스트 케이스에서 사용 가능한 마지막 속성까지 반복됩니다. “ 키 ”는 속성의 이름을 나타냅니다. 여기서“ 값 ”는 부동산의 실제 가치를 나타냅니다. 위의 스크립트를 수정하여 다양한 수준에있는 대량 속성 목록을 제거 할 수 있습니다.
# 4. 속성 추가 :
AddProperty 구문이 다음과 같은 경우 메소드가 사용됩니다.
addProperty (속성 이름);
다음과 같이 각 레벨에 맞게 조정할 수 있습니다.
testRunner.testCase.testSuite.project.addProperty (‘ProjectProperty1’)
testRunner.testCase.testSuite.addProperty (‘TestsuiteProperty1’)
testRunner.testCase.addProperty (‘TestcaseProperty1’)
위의 스크립트를 실행 한 후 프로젝트 / 테스트 스위트 / 테스트 케이스 이름을 클릭하십시오. 속성 패널에서 사용자 지정 속성 탭을 확인하면 생성 된 속성이 여기에 나타납니다. 참조는 아래를 참조하십시오.
서비스에서 속성 사용
이 섹션에서는 서비스에서 속성을 사용하는 방법을 배우고 위의 스크립트를 사용하여 통화 변환기 웹 서비스로 속성 데이터를 추가, 할당, 검색 할 것입니다.
서비스에 속성 통합 :
아래 스크린 샷과 같이 테스트 단계를 추가해 보겠습니다.
위 스크린 샷에서 AddProperties_Script 테스트 단계에는 다음과 같은 두 가지 속성을 추가하는 다음 스크립트가 포함되어 있습니다. Property_FromCurrency 과 Property_ToCurrency .
// 속성 추가
testRunner.testCase.addProperty (‘Property_FromCurrency’)
testRunner.testCase.addProperty (‘Property_ToCurrency’)
// 속성에 값 할당
testRunner.testCase.setPropertyValue (‘Property_FromCurrency’,’USD’)
testRunner.testCase.setPropertyValue (‘Property_ToCurrency’,‘INR’)
에서 ServiceRequest_CurrencyConverter_1 다음과 같이 입력 매개 변수가있는 요청이 포함됩니다.
속성에 할당 된 값은 실행 중에 이러한 매개 변수로 전송됩니다. 이 테스트 단계에 따라 GetResponseData_Script 테스트 단계에는 응답 값을 얻고 로그에 결과를 표시하는 스크립트가 있습니다. 다음은 스크립트입니다.
// 서비스에서 응답 데이터 가져 오기
def 응답 = context.expand (‘$ {ServiceRequest_Currency
Converter_1 # Response}’)
def parsedResponse = new XmlSlurper (). parseText (response)
문자열 convertValue = parsedResponse.Body.ConversionRateResponse.
ConversionRateResult.text ()
log.info (convertedValue)
모든 단계가 준비되면 테스트 스위트 이름을 두 번 클릭하고 테스트 스위트를 실행하십시오. 그런 다음 ServiceRequest_CurrencyConverter_1 응답 섹션을 참조하십시오.
이것이 우리가 찾을 수있는 것입니다.
- 응답이 수신됩니다
- 스크립트 로그를 열어 입력 매개 변수를 기반으로 변환 된 결과 데이터를 확인합니다.
이것이 입력 요청에 매개 변수를 전달하고 속성을 사용하여 스크립트를 통해 응답을 얻는 방법입니다. 더 나아가 응답 값을 다른 서비스에 입력으로 전달할 수도 있습니다.
부동산 양도
속성 전송 테스트 단계는 실행 중에 속성 데이터를 한 속성에서 다른 속성으로 전송합니다. 속성 전송 테스트 단계를 생성하는 방법과 속성 값이 두 속성간에 전송되는 방법을 간략하게 살펴 보겠습니다.
- 테스트 스위트 아래의 테스트 케이스 이름을 마우스 오른쪽 단추로 클릭하십시오.
- 딸깍 하는 소리 단계 추가 그런 다음 속성 상황에 맞는 메뉴의 옵션
- 위의 단계를 반복하여 두 번째 속성을 만듭니다. 아래 스크린 샷을 참조하십시오.
- 이제 속성 이전 테스트 단계를 추가해야합니다.
- 테스트 케이스 이름을 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 속성 전송 옵션을 클릭합니다.
- 원하는 속성 이전 이름을 입력 한 다음 확인을 클릭합니다.
- 추가 (예 : 속성 이전 도구 모음에서 더하기 기호)를 클릭합니다.
- 전송 이름을 지정하고 확인 버튼을 클릭합니다.
- 오른쪽 패널에는 소스와 타겟의 두 가지 섹션이 있습니다.
소스 선택 속성 그리고 재산으로 Property_Zipcode . 대상 섹션에서 동일하게 수행하십시오. 고르다 Target_Property 속성 드롭 다운에서 아이콘을 실행하면 속성 값이 Property_Zipcode ...에 Target_Property .
(확대 된 이미지를 보려면 이미지를 클릭하십시오)
아래 스크린 샷과 같이 전송 된 값을 참조하십시오.
노트 : 소스 속성에는 기본값이 포함되어야합니다.
이 외에도 속성 이전 화면에서 사용할 수있는 많은 옵션이 있습니다.
- 오류시 전송 실패
- 텍스트 콘텐츠 전송
- 모두에게 전달
- 양도 된 가치 부여
- 누락 된 소스에 Null 설정
- 비어 있거나 누락 된 값 무시
- XQuery 사용
- 자식 노드 전송
외부 소스에서 속성로드 :
외부 소스에서 속성을로드하려면 다음 단계를 따르세요.
- 테스트 케이스 아래에 속성 테스트 단계 추가
- 속성 단계 이름을 입력 한 다음 확인을 클릭합니다.
- 탐색 패널 아래의 속성 패널에서 사용자 지정 속성 탭을 클릭합니다.
- 딸깍 하는 소리 아이콘은 외부 속성 파일에서 속성을로드합니다.
노트 : 속성 파일은 컴퓨터에 저장되거나 존재해야합니다. 속성을 저장하려면 아이콘을 클릭합니다.
그런 다음 해당 드라이브로 이동하여 아래와 같이 속성을 선택합니다.
OK에서 사용자 지정 속성 탭에서로드 된 속성과 해당 값을 볼 수 있습니다.
결론
글쎄, 그것은 우리의 재산입니다!
각 레벨 속성에는 고유 한 특성이 있습니다. SoapUI 연습 중에 속성 데이터를 추가, 제거, 할당 및 검색하기위한 멋진 스크립트 테스트 단계를 통해 가능한 한 속성을 포함 시키십시오. 이 기술은 서비스를 연습 할 때 유용 할뿐만 아니라 실제 응용 프로그램 테스트에도 중요합니다. 테스트 케이스를 주장 .
테스트 단계간에 속성을 전송하는 것이 반복 스크립트를 작성하여 새로 만드는 것보다 쉽습니다. SoapUI는 속성을 가져오고 내보낼 수있는 멋진 기능도 제공합니다. 이 기능은 여러 프로젝트에 대해 로그인 세부 정보, 세션 세부 정보 등과 같은 공통 속성을 사용할 때 유용합니다. 이렇게하면 여러 프로젝트에 대해 동일한 속성을 반복해서 만들 필요가 없습니다. 프로젝트에 따라 속성 값을 간단히 변경할 수 있습니다.
다음 튜토리얼 # 9 : 다음 SoapUI 튜토리얼에서 우리는 Groovy의 조건문은 다음과 같습니다.
- 부울 문
- 반복문
- Groovy의 배열
오늘은 여기까지입니다. 계속 읽으시면 다음 튜토리얼에서 뵙겠습니다. 아래에 질문, 의견 및 경험을 공유하십시오.
추천 도서
- SoapUI Groovy 스크립트에서 속성을 사용하는 방법-SoapUI Tutorial # 7
- SoapUI Pro에서 데이터 기반 테스트를 수행하는 방법 – SoapUI 자습서 # 14
- 15 개 이상의 SoapUI 자습서 : 최고의 웹 서비스 API 테스트 도구
- SoapUI에서 기본 Groovy 스크립트를 작성하는 방법-SoapUi Tutorial # 6
- 초보자를위한 심층 이클립스 튜토리얼
- 7 SoapUI 및 SoapUI Pro의 중요한 기능-튜토리얼 2
- SoapUI의 어설 션 이해-SoapUI 자습서 # 5
- 프로 사용자를위한 SoapUI Pro의 4 가지 중요한 기능 – SoapUI 튜토리얼 # 12