以一个登录案例:正常的一个接口测试
准备数据--发送请求--解析响应结果--断言结果
import requests
#1、准备数据
url ='http://cms.duoceshi.cn/cms/manage/loginJump.do'
data={
'userAccount':'admin',
'loginPwd':'123456'
}
#2\、发送请求
req=requests.post(url=url,data=data)
#3、解析响应结果,判断本次请求是否成功
print(req.text)#返回的是字符串格式
print(req)
#4、用断言判断本次请求测试是否成功
msg='登录成功!'
assert msg == req.json()['msg'],'断言失败'
print( req.json()['msg'])
正常的一个request的测试框架需要包含逻辑层、测试层、数据层,有时候我们需要生成日志的话那就需要在加一个report日志层、工具层、运行层,所以就有了requests6层封装的结构。(具体创建请往下看)
案例中,只是访问一个网址,为了减少代码的冗余
一个正常的接口测试步骤:准备数据(url等)--请求访问--响应请求---断言测试
根据步骤我们将url、data进行提取放到数据层,我们这里创建一个data包,和一个data文件存放url和传参。--数据封装
将请求是使用的方法post、或者get封装到逻辑层,创建一个api_lj包和api.py文档,并在这里对post、get方法进行定义。--请求方法封装
然后就是到我们的响应检测层,这里其实就是一个用例的测试层,我们创建一个testCase包,和一个case.py文件,在这里编辑用例。调用到data中的数据和api中的请求方法。--测试用例封装
到这里用例已经执行完了,那我们需要查看日志,那么我们创建一个工具包utilit存放日志的模板;创建一个report日志包,用来存放生成的日志;再创建一个运行包runner,run.py文件,用来运行用例并生成报告。
这就是一个完成的requests的框架的创建思路。
里面主要用到了unittest、requests两个类。