0
JSONファイルから相対パスとマッピングテストデータを使用しているときに、ほとんど問題に直面しています。私はJSON形式でJSON POSTリクエストとテストデータファイルを持っています。相対パスの使用中に問題が発生し、jsonファイルから要求へのテストデータのマッピング
これは私が使用しているテストデータです。
{
"name": "Test Data",
"description": "Information's mainly related with Users",
"testData": [
{
"Scenario1": {
"givenName": "Joseph",
"familyName": "George",
"addressType": "Current",
"lineOne": "BNRA-222, Kowdiar lane",
"cityName": "Trivandrum",
"countryID": "India",
"postcode": "695006"
}
},
{
"Scenario2": {
"givenName": "Sreenath",
"familyName": "Bhasi",
"addressType": "Current",
"lineOne": "HSE-123, Karyavatom",
"cityName": "Trivandrum",
"countryID": "India",
"postcode": "695552"
}
}
]
}
これは、機能ファイル
Feature: Test using the Data from a JSON file
Background:
* def baseJsonRequest = read('../requests/jsonrequest.json')
* def baseData = read('../data/sampledata.json')
* def endPointURL = endPointURI + path
Scenario: A sample scenario to test the data parametrization
Given url endPointURL
And request baseJsonRequest
* set baseJsonRequest.autoRequest.applicants.applicant.specifiedPerson.givenName = baseData.testData[*].Scenario1.givenName
* set baseJsonRequest.autoRequest.applicants.applicant.specifiedPerson.familyName = baseData.testData[*].Scenario1.familyName
* set baseJsonRequest.autoRequest.applicants.applicant.specifiedPerson.residenceAddress.addressType = baseData.testData[*].Scenario1.addressType
* set baseJsonRequest.autoRequest.applicants.applicant.specifiedPerson.residenceAddress.lineOne = baseData.testData[*].Scenario1.lineOne
* set baseJsonRequest.autoRequest.applicants.applicant.specifiedPerson.residenceAddress.cityName = baseData.testData[*].Scenario1.cityName
* set baseJsonRequest.autoRequest.applicants.applicant.specifiedPerson.residenceAddress.countryID = baseData.testData[*].Scenario1.countryID
* set baseJsonRequest.autoRequest.applicants.applicant.specifiedPerson.residenceAddress.postcode = baseData.testData[*].Scenario1.postcode
である私の質問は以下のとおりです。
- 私は両側に相対パスを与えることができないのです。相対パスは私にjson配列を返しています。例えば、$ .. Scenario1.givenNameを使用することはできません。これにより、より長いパスを書くことができます。
- このシナリオをすべてのシナリオに含めることは事実上困難です。どのようにパラメータ化されたソリューションを実装できますか?何が良い方法でしょうか?フィーチャファイルを使用してデータの読み込みを呼び出し、その情報を別のフィーチャに渡すことはできますか。それが可能ならば、私はパラメータ化する必要があります。どうやってするか?
- JSONファイルを読み込むためにJavaクラスを使用する必要がありますか?
私は、この問題をこの – Sree
で解決することができました.Ya、私はTrivandrumに基づいています – Sree
私は知っています。あなたのLinkedInプロフィールを見ました。 – Sree