如何用soapui进行接口测试

如何用soapui进行接口测试,第1张

新建soapUI工程:右击左侧导航面板中的工作空间节点“Project”,选择“New soapUI Project”,输入工程名称,点击OK

新建TestSuite:右击Project名,选择“New TestSuite”

新建 TestCase:右击TestSuite名,选择“New TestCase”

添加数据源:右击“Test Steps”,选择“Add Step“,选择“DataSource”

添加HTTP请求:右击“Test Steps”,选择“Add Step“,选择“HTTP Test Request”

添加循环:右击“Test Steps”,选择“Add Step“,选择“DataSource Loop“

添加数据源数据:选择数据源类型之后进行添加,下图以excle为例

添加http请求数据:选择http请求类型之后进行添加,下图以POST请求为例

添加loop:将数据源和http请求关联

编辑完成后运行测试case进行正确性的测试,为了保证运行的正确性,可以添加断言对结果进行检查

当显示的测试结果为FINISHED时,表示测试通过。

废话就不多聊了,下面直接进入我们SoapUI系列学习的TestStep用法之二,下一篇是TestStep用法之三,总共三篇文章把各种TestStep,大部分讲完。

前面的SoapUI系列文章参见以下链接:

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

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

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

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

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

6、SoapUI入门之TestStep用法二

本文将学习六组TestStep:Condition Goto、Delay、Send Mail、FTP、File Wait、Property Wait、Create File

望文生义曰:条件跳转,这个Test Step主要工作是为了条件跳转,它可以定义多个Condition,并为其制定跳转的目标Test Step,当XPath表达式条件满足为True时,就跳转至指定的Test Step。当定义的条件都不满足时,继续往下执行下一个Test Step。

延时测试步骤,它说起到的作用为对中断正在进行的测试,达到指定的中断时间后,继续进行测试。

界面如下:

指定的未毫秒数,可填值即可是数值也可以是Property 表达式,输入框右键即可点击添加Property表达式。如图2.3。

Send Mail测试步骤,可以在你的测试中发送测试邮件,如果成功发送邮件,则测试通过。反之,失败

FTP Test Step用于上传文件到FTP服务器,它仅支持基本的FTP协议,所以无法指定以显示还是隐式模式访问FTP服务器。

该Test Step检测硬盘中是否存在我们指定的文件,他会暂停执行测试流程,直到找到我们指定的文件或者设定的时间已经结束。

它还拥有以下Property属性,Custom Properties(自定义属性)包含deleteFile(是否删除文件)、fileName、fileContent(文件内容)。这里我们可以用到fileContent,如我们测试API时,需要json作为body传入,我们就可以从文件中读取,使用Property属性表达式传入。

该Test Step,主要用于验证各个Property属性值是否和我们预期是否一致。它执行时会暂停测试,知道属性值我们预期值条件匹配,或者是时间到达,才会继续向下执行其他测试Step。

Create File Test Step会创建一个包含任意内容的文件,并且可以等到该文件被其他软件删除。当文件删除时,Test Case不再阻塞,就会继续向下执行。

本章就拆解完了,我们讲解了大部分的TestStep,可能其中很大一部分我们用不到,但是大家都可以尝试去用用,了解如何用,用来做什么。

下一节我们将用一章来详解Groovy Script,作为SoapUI中使用较多的脚本,我们需要掌握,敬请期待。Thanks♪(・ω・)ノ

以soapUI自带的sample project为例,学习利用DataSource进行login --》search(循环)--》logout

DataSource 的类型有:Data Connection/ Grid / File/ XML /groovy /excel /directory/JDBC

为了让DataSource能循环起来,还要和DataSource Loop结合,下面分布学习Grid / File /excel /Data Connection

1. 创建testcase,添加基础的step:login/ search/ logout

并且在search中对

2. 新增step:DataSource

并且新增一个Property:search_string, 选择类型:Grid 新增参数:Item 1 / Item 2 / Item 3 / Item 4

在新参数后,可以运行DataSource中的绿色运行按钮,可以测试一下datasource是否可用(下面有data log查看)

3. 新增step:DataSource Loop, 在DataSourceLoop配置对话框中选择datasource step,选择target step

4. 在search request中配置相关session id / searchstring

session id的参数设置,就是选择login response产生的session (之前的学习中有介绍过)

searchstring的参数设置类似,这里我们选择在DataSource中添加的search_string

5. 以上设置好后,就能运行测试用例了,

通过TestCase log /Http Log 我们能看出测试用例确实利用了我们添加的参数在循环测试

上面学习了DataSource中最简单的Grid类型,下面接着学习File /Excel / Dataconnection

其实我们只有简单改变一下步骤2中DataSource的配置,根据类型的不同进行相应的设置就可以了

File类型

---------------------------

准备格式如下的文件(参数必须一行一行写,我尝试用,隔开不起作用)

在配置项中选择相应的文件,运行测试一下,一般没什么问题

Excel类型

----------------------------

准备excel文件,注意保存为2003格式,2007格式似乎不能读取

配置一下

DataConnection类型 (我现在的是MySQL连接)

---------------------------

首先在mysql数据库中准备数据

配置data connection 正确填写各项,并利用Test connection测试连接是否成功

注意的是,在配置之前,检查 soapUI 安装目录下的 \jre\lib\ext 中是否有mysql jdbc的driver,如果没有必须下载放进行,否则不能连接成功

我从CSDN中下载的mysql-connector-java.jar

配置好连接后,有相应的sql 查询语句配置页面,也可以自己写,我这些的是: select * from item

执行一下,看看能不能查询出结果 (data log 中显示出来了,但具体的值没显示出来,不知道为何,但确实可用)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11253824.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存