Postman接口测试项目实战
1、其实也不算什么实战吧,因为自己本来就没有什么完整的接口测试经验,只是在平常工作中用偶尔用Python写过接口测试用例。这个例子也是根据书里面来的
2、自己买了一本关于接口测试的书,写这些主要是对前面自己学的做一下巩固吧,虽然还是有很多地方没完全弄懂。所以这里用到的演练项目是书里面附带的资源,是用Python里面的Tornado框架写的一个Web页面,主要涉及到GET请求、POST请求、键值对、JSON格式传递参数、Cookies、权限验证等
3、该项目是一个py文件的本地项目,不过项目的接口文档可以在网上看到:https://www.showdoc.cc/storm123
获取用户信息
1、获取用户信息的接口文档如下:
⑴请求示例:http://localhost:8081/getuser?userid=1
2、测试用例
⑴这个测试用例只是简单的写了下,实际测试中肯定会比这多
3、从Postman执行接口测试
为了使请求更加健壮,使用环境变量代替IP地址及端口,在环境变量集中设置:host=localhost:8081,因此请求URL变为:http://{{host}}/getuser
㈠用例1:参数正确
⑴构建请求
⑵构建测试脚本
在Tests中构建测试点:这里选择验证Response响应与预期一致。当然也可以验证其他点,如使用断言函数来判断响应中JSON数据的键值对等
㈡用例2:无userid参数
⑴构建请求
⑵构建测试脚本
当userid不存在时,期待的响应结果为:非法用户
㈢用例3:userid参数无值
⑴构建请求
⑵构建测试脚本
由预期结果可以知道,预期返回的是一个html文档,因此可以使用xml2Json( )方法将其转换为json,再进行效验(自己试了下还可以转为字符串)
注:
㈣用例4:userid参数值正确但不存在该用户
⑴构建请求
⑵构建测试脚本
获取用户信息2
1、获取用户信息的接口文档如下:
⑴请求示例:http://localhost:8081/getuser2?userid=1
⑵这个请求与上面请求的明显区别在于:该请求明确了需要添加header,Content-Type application/json
⑶因为这个请求的ip和端口跟上一个请求是一样的,因此可以继续使用前面请求的环境变量
2、测试用例
⑴这个测试用例只是简单的写了下,实际测试中肯定会比这多
3、从Postman执行接口测试
为了使请求更加健壮,使用环境变量代替IP地址及端口,在环境变量集中设置:host=localhost:8081,因此请求URL变为:http://{{host}}/getuser2
㈠用例1:添加header且参数正确
⑴构建请求
⑵构建测试脚本
㈡用例2:添加错误header、参数正确
⑴构建请求
⑵构建测试脚本
获取用户余额
1、获取用户余额的接口文档如下:
⑴请求示例:http://localhost:8081/getmoney?userid=1
⑵因为这个请求的ip和端口跟前面的请求是一样的,因此可以继续使用前面请求的环境变量
⑶这个请求需要注意的是:入参为JSON格式
2、测试用例
⑴这个测试用例只是简单的写了下,实际测试中肯定会比这多
3、从Postman执行接口测试
为了使请求更加健壮,使用环境变量代替IP地址及端口,在环境变量集中设置:host=localhost:8081,因此请求URL变为:http://{{host}}/getmoney
㈠用例1:参数正确:为JSON类型
⑴构建请求
⑵构建测试脚本
㈡用例2:参数错误:为非JSON格式
⑴构建请求
请求参数正确格式为JSON格式的,这里测试错误格式的:因此使用表单形式提交参数(也可以用其他的格式)
⑵构建测试脚本
㈢用例3:参数正确但请求方法错误
⑴构建请求
⑵构建测试脚本
预期结果返回的是一个HTML文件,因此可以使用xml2Json( )方法将HTML文件转为JSON后在进行效验
修改用户余额
1、修改用户余额的接口文档如下:
⑴请求示例:http://localhost:8081/setmoney?userid=1&moner=500
⑵因为这个请求的ip和端口跟前面的请求是一样的,因此可以继续使用前面请求的环境变量
⑶这个请求需要注意的是:需要有http权限验证,账号admin密码123456
2、测试用例
⑴这个测试用例只是简单的写了下,实际测试中肯定会比这多
3、从Postman执行接口测试
为了使请求更加健壮,使用环境变量代替IP地址及端口,在环境变量集中设置:host=localhost:8081,因此请求URL变为:http://{{host}}/setmoney
㈠用例1:权限验证通过、参数正确
⑴构建请求
这里构建请求主要是需要要在Authorization下编辑认证账号和密码,参数可以使用表单的形式提交
⑵构建测试脚本
㈡用例2:未权限验证、参数正确
⑴构建请求
不进行账号、密码认证,直接发送请求
⑵构建测试脚本
修改用户余额2
1、修改用户余额2的接口文档如下:
⑴请求示例:http://localhost:8081/setmoney2?userid=1&moner=500
⑵因为这个请求的ip和端口跟前面的请求是一样的,因此可以继续使用前面请求的环境变量
⑶这个请求需要注意的是:需要添加cookie,token token是写死的token12345
2、测试用例
⑴这个测试用例只是简单的写了下,实际测试中肯定会比这多
3、从Postman执行接口测试
为了使请求更加健壮,使用环境变量代替IP地址及端口,在环境变量集中设置:host=localhost:8081,因此请求URL变为:http://{{host}}/setmoney2
㈠用例1:Cookie正确、参数正确
⑴构建请求
这里构建请求主要是需要要在headers下编辑cookies,参数可以使用表单的形式提交
⑵构建测试脚本
㈡用例2:Cookie错误、参数正确
⑴构建请求
输入错误的Cookie值
⑵构建测试脚本