在接口测试中会遇到需要上传文件的操作,比如头像修改等。那么soapui是怎么实现这部分测试的呢。以下以文件上传接口为例。
一、获取文件上传接口
可以通过开发直接提供的接口文档,或者自己抓包获取接口信息。
示例:
二、soapui跑通单个接口
1、导入“登录” 的接口,并运行跑通
a、右键Projects -->New REST Project,在弹框界面的“URI”输入“登录” 的接口地址
b、双击登录的request请求,设置以下:
1)Method为post,
2)添加请求参数userName、password,
3)勾选“Post QueryString”,
4)点开Headers添加cv版本号,
5)点击运行,查看运行结果
2、导入“上传文件” 的接口,并运行跑通
a、右键Projects -->New REST Project,在弹框界面的“URI”输入“上传文件” 的接口地址
b、双击“上传文件”的request请求,设置以下:
1)Method为post,
2)添加请求参数param,
3)勾选“Post QueryString”,
4)点开Headers添加token信息,
5)Media Type选择multipart/form-data(这里选择后再进行Post QueryString勾选),
6)点开Attahments,添加要上传的文件,ContentID为file,
7)点击运行,查看结果
三、脚本优化
如果要测试批量上传文件接口,或者例如文件名错误,格式不对等接口测试情况,需要创建测试集来测试。
以下有一些细节不理解的,可以看下我之前写的文章,很详细。
1、右键项目project-->new TestSuite-->new TestCase,将登录跟上传文件接口拖动到Test Steps中,并修改请求名称
2、在登录之后插入Property Transfer,并添加一个Properties设定一个变量,用来接收token的值。
a、Properties中添加token变量值
b、Property Transfer设置以下:
1)添加transfers值token
2)设置请求Source为sign,Response,JsonPath为$.data.token
3) 设置Target为 Properties,token
4)点击运行测试一下
5)出现运行结果,表示ok
3、双击upload请求,点开Headers,values值进行${Properties#token}引用
4、双击TestCase,点击运行,查看结果显示成功。