私のプロジェクトにはいくつかのテストケースがあります。私はオープンソースsoapを使用しています。CSVファイルを読み込むためのgroovyスクリプトの再利用方法
私は以下のコードを使用しています。
のDataSource
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
//Define Path
def csvFilePath = "D:\\URL.csv"
context.fileReader = new BufferedReader(new FileReader(csvFilePath))
//Header
firstline = context.fileReader.readLine()
//Actual Test Data
firstline = context.fileReader.readLine()
//Split data with comma
String[] data = firstline.split(",")
log.info data[0]
log.info data[1]
//Assign each comma separated value to the Property
context.testCase.setPropertyValue("username", data[0])
context.testCase.setPropertyValue("userrole", data[1])
DataLoop:ループバック
nextline = context.fileReader.readLine()
if(nextline!=null)
{
String[] data = nextline.split(",")
log.info data[0]
log.info data[1]
context.testCase.setPropertyValue("username", data[0])
context.testCase.setPropertyValue("userrole", data[1])
//context.testCase.setPropertyValue("roledescription", data[2])
//Navigate to AddUser Step to run again with the next row
testRunner.gotoStepByName("AddUsers")
}
各テストケースでこれらを使用するために、私は、各テストケースにクローンを作成する必要が..私はTestCase1として最初の行を読み込み作成しました次の部分はTestCase2となります。これらのスクリプトをRunTestCaseオプションから呼び出しています。
しかし残念ながら、私はエラーを取得していますnullオブジェクトのreadlineメソッドを呼び出すことはできません。
私はDataloopの部分に参照を追加しました。しかし、それは無限ループを作成する..再利用する方法はありますか?
クローンを作成しても上記のスクリプトが役立ちますかどうかわかりませんか?これをチェックするhttps://learnsoapui.wordpress.com/2012/05/19/groovy-datasource-teststep-dataloop-teststep-using-groovy-in-soapui/ – Rao
groovyでcsvを扱うより良い方法は - https ://github.com/xlson/groovycsv – Rao
同じテストケースでうまく動作しているコード。しかし、それを遠ざけて、コンセプトが再利用されていません。 – ChanGan