SoapUI入门之TestStep用法二

SoapUI入门之TestStep用法二,第1张

废话就不多聊了,下面直接进入我们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入门系列文章终于要和大家说再见了,18年拖到20年。还好写完了,不负初心~

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

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

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

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

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

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

6、SoapUI入门之TestStep用法二

7、SoapUI入门之TestStep用法三(Groovy Script)

8、SoapUI入门之Discovery API(懒人利器)

9、SoapUI入门之运行测试、输出和查看Test Case结果报表

10、SoapUI入门之Jenkins持续集成

Jenkins 是一个可扩展的持续集成引擎。我们用Jenkins持续集成SoapUI的前提是我们要安装好Jenkins。

网上安装Jenkins的教程很多,这里的话就不多讲了,大家自行百度安装好就行。

输入节点名字 ->选择Permanent Agent ->OK

a.# of executors

 (一个或多个)。

b.Remote FS root

   代理计算机上主服务器的主目录。

   对于Windows代理,请使用类似以下内容:“ C:\ Jenkins \”

c.Usage:

   对于其他工作人员: 尽可能利用此节点

   对于特殊作业:将本机仅用于捆绑作业

d.Launch Method:

   控制Windows代理的一种简单方法是通过Java Web Start使用启动代理

e.Availability

   尽可能保持此代理在线

f.待办事项:为每个选项添加详细信息。

g.OK

a、 打开浏览器转到Jenkins主页URL:localhost:8080

b、Manage Jenkins ->Mange Nodes

c、点击Launch,启动代理

d、运行程序。如果Windows要求您选择程序,请使用(Java Web Start启动器)

e、如果遇到连接问题,则可以扩大d出窗口以查看所使用的主 端口 并检查网络配置(防火墙,端口转发等)。 请注意,Jenkins选择一个随机的高编号端口。如果希望Jenkins使用静态端口,请转到“管理Jenkins”>“配置全局安全性”,然后在“ JNLP代理的TCP端口”框中选择端口号

随着SoapUI使用Jenkins持续集成讲完,我们这一系列SoapUI入门系列就讲完了,兜兜转转,拖拖拉拉。在19年Ending之前把它强行Ending了。或许文章讲解不好,没说清楚。感谢点击进来,听我啰啰嗦嗦的同志们,有什么问题可以留言哟~ ,预祝大家新年快乐~

接口测试作为集成测试的一部分,通过直接调用被测试的接口来确定系统在功能性、可靠性、安全性和性能方面是否能达到预期,有些情况是功能测试无法覆盖的,所以接口测试是非常必要的。

接口测试分为两种,一种是webservice接口,走soap协议通过http传输,请求报文和返回报文都是xml格式的,测试时通过工具soapUI进行测试。使用情况比较少;另一种http api接口,走http传输协议,通过路径来区分调用的方法,最常用的是get和post请求。

get请求和post请求的区别在哪里呢?网上的答案为:

1、get请求可以在浏览器中请求到,post请求的测试需要借助工具

2、get请求使用url和cookie传参,post的数据放在body中

3、post比get更安全,因为传递的参数在url上是看不到的

4、get请求的url会有限制,而post请求的数据可以非常大

5、一般get请求是来获取数据,post请求是传递数据的

其实,对于现在飞速发展的 互联网来说,上面的说法已经不严谨了。首先,post请求的参数也可以写在url里,但是这种情况不多见;其次表面上看起来,post利用body传参,比get的url传参安全,但其实只要用抓包工具(fiddler,Charles等),post的参数也是一览无余;再次,现在的浏览器非常强大,可以输入支持很长的URL,所以也不再有限制一说了。这么说来,种种区别只有最后一条是最根本的了。

 怎么来测试接口呢?根据什么来测呢?这就需要开发提供的接口文档了,接口文档和功能测试的需求说明书的功能是一样的。包括:接口说明、调用的url,请求方式(get or post),请求参数、参数类型、请求参数说明,返回结果说明。这里接口文档生成可以使用apipost接口文档生成工具。有了接口文档后,我们就可以设计用例了,一般接口测试的用例分为以下几种:

1、通过性验证,说白了就是传递正确的参数,是否返回正常的结果

2、参数组合,因为参数有必传和非必传,参数的类型和长度,以及传递时可能业务上的一些限制,所以在设计用例时,就要排列组合这些情况,保证所有情况都能覆盖到

3、接口的安全性,这个又分为几种情况:

1)绕过验证,比如提交订单时,在传递商品价格参数时,修改商品价格,就要看后端有没有验证了。或者我支付时,抓个包将订单金额一改,如果能以我改后的金额支付,那这个借口就有问题了。

2)绕过身份验证,就是某个功能只有有特殊权限的用户才能 *** 作,那我传递一个普通的用户,是不是也能 *** 作呢

3)参数是否加密,这个关系到一些账户的安全,比如我们在登录一些网站时,它要将我们的登录信息进行加密,如果不加密我们的信息就会暴露,危害性极大。

4) 密码安全规则,设置密码时复杂程度的校验。

4、根据业务逻辑来设计用例

用例设计完了,用什么来测试接口呢?我们可以借助一些工具,比如apipost和jmeter。apipost使用比较简单,可以在列表中选择请求方式,在输入框中输入URL,如果是get请求,直接点击发送就可以看返回结果了。

如果是post请求,会涉及到几种参数的上传方式和添加请求头、权限验证还有添加cookie等 *** 作。apipost都可以简单实现

还有一种测试接口的工具是jmeter,用途比较广泛,不但能测接口的功能,还能对接口进行性能测试。比如:压力测试、负载测试等。在jmeter中需要创建线程组,如图:

Apipost官方链接: https://console.apipost.cn/register?utm_source=10008


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

原文地址: http://outofmemory.cn/bake/11181854.html

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

发表评论

登录后才能评论

评论列表(0条)

保存