2017-10-06 91 views
1

我是SoapUi的新手。我正在探索如何使用groovy腳本完成soapUi中的多個請求。如何使用soapUi中的Groovy腳本循環多次

下面

是我嘗試做例子,基於例如,我發現通過「谷歌搜索」

import com.eviware.soapui.SoapUI; 
import com.eviware.soapui.model.testsuite.*; 
import com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner 
import java.util.Random 
import com.eviware.soapui.model.testsuite.TestRunner.Status 



// Define your testCase pointer 
//def testcase = testRunner.testCase.testSuite.project.testSuites["TestSuite - User Management REST API"].getTestCaseByName ("Authenticate User") 

def counterUser = testRunner.testCase.testSuite.getPropertyValue("counter") 

int value = counterUser.toInteger() 
String tester = "" 
30.times { 
value = value + 1 
tester = "tester " + value.toString() 
testRunner.testCase.testSuite.setPropertyValue("userName", tester) 

testRunner.runTestStepByName("POST - createUser - Create a User") 
} 
testRunner.testCase.testSuite.setPropertyValue("counter", value.toString()) 

我想創建從Tester1 ... tester2開始30個用戶.... .tester30。 可以這樣做嗎?我不斷收到一個錯誤,例如NullPointerException異常在該行

int value = counterUser.toInteger() 
+0

能否請您添加從'錯誤log'標籤完整堆棧跟蹤? – Rao

+0

'Fri Oct 06 13:51:32 SGT 2017:錯誤:發生了錯誤[無法在null對象上調用方法toInteger()],請參閱錯誤日誌以瞭解詳細信息 我需要導入其他更多內容嗎? – emma

+0

annie,檢查解決方案,看看是否解決。 – Rao

回答

1

我給你說的話。

這是因爲,最初沒有計數器的值,其結果爲null,並且您正在對其應用toInteger()

只要改變:

來源:

int value = counterUser.toInteger() 

要:

int value = counterUser?.toInteger() ?: 0 
+0

謝謝!我明白了!但是當我多次運行時,這個數字還在不斷增加。現在我跑了很多次後成爲tester340。 – emma

+0

嗨 - 重新初始化您的最後一行計數器爲零。我猜測每次測試結束後寫回的值是30,60,90 ...... –

相關問題