SoapUI 之接口数据传递2018-06-22

2018-06-22  本文已影响5人  3479da3be4fa

关注凡猫学院:加微信+17031115530,拉测试微信群交流

摘要: 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 步操作:

微信+17031115530,拉测试微信群交流

添加一个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。

关注凡猫学院:加微信+17031115530,拉测试微信群交流

关注凡猫学院:加微信+17031115530,拉测试微信群交流

上一篇 下一篇

猜你喜欢

热点阅读