本篇文章来讲一下SoapUI在使用中常用的参数化方法字段参数化和使用DataSource调用Excel中的

数据给接口参数化,其中DataSource功能SoapUI开源版没有,大家可以使用破解版,

破解地址:https://www.cnblogs.com/Sweettesting/p/11399534.html

一、准备工作

  为了方便大家上手实操,本次我们使用公用的WEB服务。

  

公用事业:国内飞机航班时刻表 WEB 服务
Endpoint:http://ws.webxml.com.cn/webservices/DomesticAirline.asmx
Disco:http://ws.webxml.com.cn/webservices/DomesticAirline.asmx?disco 
WSDL:http://ws.webxml.com.cn/webservices/DomesticAirline.asmx?wsdl

  关于接口方法“getDomesticAirlinesTime”的介绍:

输入参数:startCity = 出发城市(中文城市名称或缩写、空则默认:上海);

     lastCity = 抵达城市(中文城市名称或缩写、空则默认:北京);

     theDate = 出发日期(String 格式:yyyy-MM-dd,如:2007-07-02,空则默认当天);

     userID = 商业用户ID(免费用户不需要)

返回数据:DataSet,Table(0)结构为 Item(Company)航空公司、

     Item(AirlineCode)航班号、Item(StartDrome)出发机场、

     Item(ArriveDrome)到达机场、Item(StartTime)出发时间、

     Item(ArriveTime)到达时间、Item(Mode)机型、

     Item(AirlineStop)经停、Item(Week)飞行周期(星期)

二、参数化之Properties

  Property 是一个命名的字符串可以被 Groovy Script,Property Transfer 或者 Property-Expansion 引用,目前所有的变量均被处理为字符串。

SoapUI允许在项目的各个层次中定义变量,常用的层次包括: Project,TestSuite,TestCase,Global等。

官方文档:https://www.soapui.org/docs/functional-testing/teststep-reference/properties.html

  1.首先,我们New Soap Project,新建一个Soap接口项目,命名为DomesticAirline

  2.我们鼠标双击Request1,依据接口方法要求输入入参,测试一下此接口的正确性

  3.为Request1新增一个TestCase,命名为“获取航班时刻表”,此时会发现之前我们测试接口的入参数据跟着带入进来

  4.右键Test Steps>>>Add Step>>>Properties,然后添加需要进行参数化的变量,变量名自定义为startCity、lastCity、theDate,填写对应的Value

  5.双击“获取航班时刻表”请求,对请求中的参数进行变量引用,格式:${#Properties#变量名},

第一个#后定义哪个级别的属性变量,第二个#后定义属性名称。REST类接口请求同理。

  6.双击TestCase1,点击绿色三角图标运行请求,进度条绿色表示请求通过。在TestCase Log中双击Step可以查看运行结果。

 三、参数化之DataSource

对于DataSource工具栏中各项属性的含义,大家可以阅读官方文档:https://www.soapui.org/docs/data-driven-tests/reference/datasources.html

DataSource Type:

  a.本次我们使用DataSource调用Excel中的数据给接口参数化,先准备Excel文件,内容如下:

这里要注意,入参theDate的值要使用文本格式,不然SoapUI会读取出错。

  b.右键Test Steps-->Add Step-->DataSource,添加变量名startCity、lastCity、theDate,

DataSource选择Excel,Configuration配置见图解。

  c.配置好DataSource,接下来在接口中进行参数化,如起始城市${DataSource#startCity},其它参数同理

  d.此时,我们需要遍历DataSource中的所有内容,这里就要用到DataSource Loop这个步骤。

右键Test Steps-->Add Step-->DataSource Loop,设置DataSource Loop的数据来源、Target step

  e.调整Test Steps的顺序,正确的步骤应当是“数据源>>>请求>>>数据源循环”,

双击TestCase1,运行,我们可以看到Excel的数据均被调用。

最新文章

  1. GPS各种地图坐标系转换(转载)
  2. SE(homework3)_敏捷模型
  3. SQL SERVER修改排序规则——脚本篇
  4. [curator] Netflix Curator 使用
  5. hbase运行shell时ERROR:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 的解决办法
  6. ValueStack值栈和ActionContext
  7. mysql优化小技巧
  8. 自定义请求头信息及cookie信息
  9. NDK_ROOT找不到的解决方法 MACOS
  10. Ps 美白磨皮【1】
  11. SqlServer 挂载本地盘符到服务器端,方面备份还原
  12. defgen工具
  13. .NET、C#和ASP.NET三者之间的区别
  14. C-fopen,fwrite,fread,fseek,fgets,popen,access笔记
  15. DTCC2019第十届中国数据库技术大会将于5月在北京召开
  16. Linux学习之Vim/Vi使用(十三)
  17. Python基础笔记(一)
  18. 【struts2】struts2的execAndWait拦截器使用
  19. 一步步实现一个基本的缓存模块·续, 添加Memcached调用实现
  20. leetcode-771-Jewels and Stones(建立哈希表,降低时间复杂度)

热门文章

  1. HTML A标签 href click事件冲突
  2. Linux系统性能测试工具(四)——CPU性能测试工具之super_pi、sysbench
  3. 免费申请 QQ 免费靓号
  4. java程序员究竟应该掌握点什么
  5. 自然语言处理资源NLP
  6. php内置函数分析之array_change_key_case()
  7. 常见 linux 命令
  8. 唤醒 App
  9. apache-2.4.x 编译安装方法
  10. 锁,threading local,以及生产者和消费者模型