soapUI 之 测试文件上传

本贴最后更新于 1561 天前,其中的信息可能已经水流花落

在接口测试中会遇到需要上传文件的操作,比如头像修改等。那么soapui是怎么实现这部分测试的呢。以下以文件上传接口为例。

一、获取文件上传接口

可以通过开发直接提供的接口文档,或者自己抓包获取接口信息。

示例:
image.png

image.png


## 二、soapui跑通单个接口

1、导入“登录” 的接口,并运行跑通

a、右键Projects -->New REST Project,在弹框界面的“URI”输入“登录” 的接口地址

b、双击登录的request请求,设置以下:

  1. Method为post,
  2. 添加请求参数userName、password,
  3. 勾选“Post QueryString”,
  4. 点开Headers添加cv版本号,
  5. 点击运行,查看运行结果

image.png


#### 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. 点击运行,查看结果

image.png

image.png


## 三、脚本优化

如果要测试批量上传文件接口,或者例如文件名错误,格式不对等接口测试情况,需要创建测试集来测试。

以下有一些细节不理解的,可以看下我之前写的文章,很详细。


#### 1、右键项目project-->new TestSuite-->new TestCase,将登录跟上传文件接口拖动到Test Steps中,并修改请求名称 ![image.png](http://testingpai.com/upload/file/2019/d62a85f7-1da1-4c7a-9159-f04f860c80a8.png)
#### 2、在登录之后插入Property Transfer,并添加一个Properties设定一个变量,用来接收token的值。

a、Properties中添加token变量值
image.png


b、Property Transfer设置以下:
  1. 添加transfers值token
  2. 设置请求Source为sign,Response,JsonPath为$.data.token
  1. 设置Target为 Properties,token
  1. 点击运行测试一下

  2. 出现运行结果,表示ok
    image.png


#### 3、双击upload请求,点开Headers,values值进行${Properties#token}引用 ![image.png](http://testingpai.com/upload/file/2019/395df3ce-80a6-487e-b4a8-789746efa34e.png)
#### 4、双击TestCase,点击运行,查看结果显示成功。 ![image.png](http://testingpai.com/upload/file/2019/510e4d94-687f-4733-9a9f-f5ba1751ef6b.png)
1 操作
potato 在 2020-08-13 10:05:10 更新了该帖
回帖
请输入回帖内容 ...