轉載:SoapUI之接口數據傳遞
阿新 • • 發佈:2017-06-17
ref 模擬 運行 效率 apu 一個 操作 click rest
SoapUI之接口數據傳遞(TestCase、TestSuite傳遞)
SoapUI之接口數據傳遞(step傳遞)
SoapUI+Groovy做接口自動化測試
SoapUI中使用Conditional Goto TestStep
摘要: How to use Conditional Goto TestStep instead of Groovy Script
Background: 在SoapUI的TestStep中,Groovy Script可以實現大多數種類的測試場景,但是一個Project中Script太多會拖慢運行速度和效率,所以SoapUI自帶了其他種類的TestStep,例如“Conditional Goto” :
1.Right click one TestStep->Right click->Add Step->Conditional Goto.
2.在彈出的界面做下圖所示4步操作:
- 添加一個Condition變量,名字不限,見名知義即可;
- 點擊視圖選擇器,選擇作為條件的變量:點擊後SoapUI就會自動彈出上一個Request Method Test Step的Response Json View,雙擊選擇需要作為跳轉標誌的字段,那對應的XPath Expression就會填充到上方的空白處;
- 為選擇的變量添加跳轉條件:上圖的意思是“選擇的status字段是IN_CALCULATION的時候跳轉到指定的Target step”;
- 在下拉列表中選擇跳轉條件滿足時需要跳轉到的Target Step:上圖中需要循環執行“GetTableData_PAAPI”,所以條件是這個Step的某個字段,條件滿足時繼續執行該Step。
註意:
- Conditional Goto步驟在實際運用中的意思是:當上一個REST Test Step的滿足某一個條件時,就跳轉到該Test Case中的某個Target Step。
- 用Conditional Goto步驟實現輪詢時,因為該Step有自己設定的間隔時間(應該是幾十毫秒),可能跟界面上輪詢時間不同,所以為了模擬真實界面錯做,就需要在改步驟前面加上Sleep Test Step(默認休眠時間是1000ms)。
- 若需要跳轉的條件跟上一個REST Test Step返回結果無關,此時該TestStep無效。這種情況下可以添加一個Groovy Script,在Script中判斷條件是否為true,若為true,則goto某TestStep:
if(context.expand(‘${DataSource#bmkId}‘) == ""){
testRunner.gotoStepByName("GetOwnershipData_PAAPI VS DataAPI")
}
所以在用工具的時候,要根據自己的業務需求靈活選擇Test Step。
轉載:SoapUI之接口數據傳遞