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之接口数据传递的更多相关文章

  1. WSDL接口数据传递以及外网发布需要注意的地方

    A系统传递数据给B系统 1.A创建asmx推送接口如下 using System; using System.Collection.Generic; using System.Data; using ...

  2. (转载)Javascript操作表单之间的数据传递

    (转载)http://www.aspxhome.com/javascript/skills/200710/214825.htm 今天有朋友问我关于用JAVASCRIPT来进行页面各表单之间的数据传递的 ...

  3. android Activity之间数据传递 Parcelable和Serializable接口的使用

    Activity之间传数据时,为了避免麻烦,往往会将一些值封装成对象,然后将整个对象传递过去.传对象的时候有两种情况,一种是实现Parcelable接口,一种是实现Serializable接口.0.解 ...

  4. postman(五):在不同接口之间传递数据

    为了更灵活地构造请求以及处理响应数据,postman提供了Pre-request-Script和Tests,在这两个标签中可以编写js代码辅助测试.之前学习了在发送请求的Tests标签如何添加断言以及 ...

  5. Android图像数据传递到C++的一些坑

    最近在做一个Android图象识别的app, 通过相机预览或者是拍照功能获取图像数据,然后将图像数据传递到本地C++的图像识别so库.在这个过程中花的时间最多的就是数据传输问题.谨以此坑,警示未来!  ...

  6. OpenGL/GLSL数据传递小记(3.x)(转)

    OpenGL/GLSL规范在不断演进着,我们渐渐走进可编程管道的时代的同时,崭新的功能接口也让我们有点缭乱的感觉.本文再次从OpenGL和GLSL之间数据的传递这一点,记录和介绍基于OpenGL3.x ...

  7. Android零基础入门第83节:Activity间数据传递方法汇总

    在Activity间传递的数据一般比较简单,但是有时候实际开发中也会传一些比较复杂的数据,本节一起来学习更多Activity间数据的传递. 一.常用数据类型 在前面几节我们只学习了一些常用类型的数据传 ...

  8. Activity系列讲解---数据传递

    在Android中,不同的Activity实例可能运行在一个进程中,也可能运行在不同的进程中.因此需要一种特别的机制帮助我们在Activity之间传递消息.Android中通过Intent对象来表示一 ...

  9. 七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递

    通过第一天的学习之后,我们相信您已经对MVC有一些基本了解. 本节所讲的内容是在上节的基础之上,因此需要确保您是否掌握了上一节的内容.本章的目标是在今天学习结束时利用最佳实践解决方案创建一个小型的MV ...

随机推荐

  1. Context、Select(day01)

    Oracle sql: 4天 plsql: 2天 proc: 2天 数据库介绍 1.1 数据库简介 1.1.1 数据管理技术的发展 人工管理阶段:20世纪50年代中期之前 文件管理阶段:20世纪的50 ...

  2. ubuntu 16.04 忘记登录密码的解决办法

    1.开机点击ESC或长按Shift,进入GUN GRUB界面  2.选择有recovery mode的选项,按e进入命令行  3.找到有recovery nomodeset的行,删除recovery ...

  3. Problem 52

    Problem 52 It can be seen that the number, 125874, and its double, 251748, contain exactly the same ...

  4. 0708关于理解mysql SQL执行顺序

    转自 http://www.jellythink.com/archives/924,博客比价清晰 我理解上文的是SQL执行顺序 总体方案.当你加入索引了以后,其实他的执行计划是有细微的变化,比方说刚开 ...

  5. Spring MVC + Shiro + Redis 实现集群会话管理

    之前用的单机Shiro实现用户单点登陆,基本问题不大,但是集群间的session共享单靠Shiro就不好实现了.所以就借助Redis数据库来实现. 这里Redis的搭建我之前说过,感兴趣的可以去看看: ...

  6. windows下本地安装oracle忘记密码,账号被锁咋办

    忘记密码咋办: 进入cmd,输入set ORACLE_SID=ymxg  (ORACLE_SID的值为你想登录的oracle实例的SID) 然后输入:sqlplus / as sysdba 最后输入: ...

  7. pl/sql developer 自带汉化选项

    pl/sql developer 自带汉化选项 版本:11.0.2 工具 -> 选项 -> 用户界面 ->外观, 第一项就是选择语言: 选择Chinese.lang,如果有的话:

  8. [Javascript Crocks] Understand the Maybe Data Type

    In this lesson, we’ll get started with the Maybe type. We’ll look at the underlying Just and Nothing ...

  9. ACM-并查集之小希的迷宫——hdu1272

    ***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...

  10. '无法将“vue”项识别为 cmdlet、函数、脚本文件或可运行程序的名称' 或 'vue不是内部或外部命令' 的解决方法

    如果在使用 vue 初始化项目的时候提示: vue : 无法将“vue”项识别为 cmdlet.函数.脚本文件或可运行程序的名称.请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次. 或者: ...