SoapUI入门之TestStep用法一(DataSource&

2019-04-26  本文已影响0人  天上飘的是浮云

说实在的最近也不忙,离第一篇SoapUI入门博客也过去好长时间了,一直没写博客,这东西就这样,开始写了就觉得挺有意思的,也不会有多抵触,但是可笑的,没开头就一直不想动手,古人云:万事开头难是有道理的,😓

但是我也对自己做出了要求,像大家承诺每月一篇,尽快吧SoapUI系列文章完结,写全,不忘初心!毕竟现在也没做这块了,再不写,该给忘了😄

现在开始我们的SoapUI集成测试学习之道:

1、SoapUI 入门之创建Project、生成TestCase以及参数化

2、SoapUI 入门之配置Headers,以及将Cookie、Token持久化存储

3、SoapUI 入门之让你爽爽的用上断言

4、SoapUI入门之附件上传和配置Https请求

5、SoapUI入门之TestStep用法一(DataSource&DataSource Loop)

一、前言

1、本文所要提及的是如何在TestCase中添加TestStep,毕竟Soap UI测试用例主要由Project、Test
Suite、Test Case、Test Step四级组成,结构如图1.1

1.1.png

Project:是指一个需要测试的项目
Test Suite:指项目中的一个模块(一组相关测试集合),如登陆模块,登出模块,订单模块等等
Test Case:测试用例,指某一需要测试的模块中,细分小的一个功能或方法
Test Step:测试步骤,实现Test Case的step

2、Test Step
在Soap UI中,Test Step有很多,我会讲解其中一部分用得比较多的,Properties、Property Transfer、DataSource、DataSource Loop、REST Request、Groovy Script、Data Sink、Data Gen、Conditional GOTO、File Wait等。

其中Properties、Property Transfer在《SoapUI 入门之配置Headers,以及将Cookie、Token持久化存储》中已经讲过了,这里就不再重复说明了,有需要去这篇文章温故下。

二、DataSource

Data Source顾名思义:数据来源,它旨在为某个TestCase 中某个api提供数据支持服务。

2.1 添加DataSource

如何添加一个DataSource到Test Case中,在下图2.1中,比较清晰明了,选择TestCase -> 鼠标右键 -> Add Step -> DataSource

2.1.png
2.2 DataSource Type
   DataSource有多种不同的数据来源类型,如下:

   Data Connection: 使用JDBC连接从数据库获取数据。 它类似于JDBC数据源,但使用预定义的JDBC数据库连接。
   Data Generator:  使用内置数据生成器引擎生成数据。
   Excel:   从Excel表中获取数据。
   File:   逐行获取指定文件的内容。
   JDBC:   使用JDBC连接从数据库获取数据。与Data Connection不同,它使用数据源中指定的连接。
   Grid:   获取网格中指定的数据。
   Groovy:  使用Groovy脚本生成数据。
   JSON:    使用JSONPath表达式从JSON内容中分析所需数据。
   XML: 使用XPath表达式从XML内容中分析所需的数据。
   Directory:   迭代指定的目录并获取文件内容。
2.3 DataSource Type的用法

在2.1中添加DataSource后,我们可以选择DataSource的不同type。

2.3.png 2.5.png

如图2.6,是我们测试模拟的数据文本文件,在图2.7中,配置后文件路径,Property属性值,分隔符,编码方式后,点击运行,可以在结果集中看到我们的测试数据。

2.6.png 2.7.png 2.8.png 2.9.png

如上图,我们这里假设从我们主用户目录获取文件名,然后赋值给File Property属性,
第一步:导入需要的包。
第二步:获得当前这个DataSource的当前行,为后续迭代做准备。
第三步:获得我们的主用户目录。
第四步:申明包含文件名的数组,作为数据源。
第五步:遍历主用户目录,将所有文件名存入数组中。
第六步:以刚才获取的DataSource当前行,如数组大小比较,用作迭代结束的条件(此方法会自动进行循环迭代)
第七步:将数组中的文件名一个个赋值给Property属性值。

3.0.png 3.1.png

三、DataSource Loop

DataSource Loop一看这名呢,就赶脚是不是和DataSource有关系,嗯,对了。一般它和DataSource乃成对出现,Loop一词儿表明了它的循环迭代属性,用于循环迭代出与之匹配的DataSource中的数据,赋值给其指定的Requst

3.1 添加DataSource Loop
3.2.png
3.2 DataSource Loop使用

如下图,在图3.3中,我们配置好DataSource Loop,指定DataSource Step作为数据迭代来源,并指定将迭代出的值用于Attachment_upload这个附件上传的Request。

然后在图3.4中,配置Request参数是,我们可以使用Property表达式,使用DataSource的属性值。


3.3.png 3.4.png

四、结语

本章基本就拆解完了,我们主要从众多TestStep中,选取了DataSource和DataSource Loop这对儿好基友来进行拆解。DataSource类别者众,大家都可以尝试去用用,结合DataSource Loop进行数据循环迭代,应用于Request参数中。

下一节我们将讲一下在ReadyAPI中一些其他的TestStep怎么使用的,比如REST Request、Groovy Script、Data Sink、Data Gen、Conditional GOTO、File Wait等等。Thanks♪(・ω・)ノ

申明:禁用于商业用途,如若转载,请附带原文链接。https://www.jianshu.com/p/827e4a1f81d1 蟹蟹(#.#)

上一篇 下一篇

猜你喜欢

热点阅读