前言
今天呢,笔者想和大家聊聊python+pytest接口自动化中将代码进行封装,只有将测试代码进行封装,才能被测试框架识别执行。
例如单个接口的请求代码如下:
import requests
headers = {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36"
}
url = "https://mp.toutiao.com/profile_v4/"
res = requests.get(url=h_url, headers=headers)
假设我们需要将上面这段代码编写成测试框架能执行的测试用例,仅仅只是这样写代码显然是不够的,还需要进行如下补充:
- 需要将代码封装成单元测试框架 (pytest或unittest) 能识别的测试函数或测试类,否则将不会被识别执行。
- 需要加上断言,即结果与期望之间的对比,单元测试框架才能判定该用例执行结果是否通过,结果==期望则说明通过,否则失败。
python中函数以及类的封装这里不做过多说明,这篇文章的目的是让大家明白在接口自动化测试中一般怎样封装测试代码。
一、测试用例封装的一般规则
测试用例的封装有两种,测试函数和测试类,封装的一般规则如下:
- 一个测试函数对应一条测试用例。
- 测试类中可定义多个测试方法,一个测试方法对应一条测试用例,测试类可以看作是一个测试用例集。
- pytest中测试函数或测试方法的命名必须以test开头,测试类名必须以Test开头。具体命名规则可以参考我之前的文章pytest(3)-测试命名规则。
- 对于单接口的测试校验,一个单接口的测试用例只包含一个接口请求,即将一个接口请求封装成一个测试函数或测试方法。
- 对于场景(多接

本文介绍如何在Python pytest框架下封装接口自动化测试,包括测试用例的封装规则,测试函数和测试类的方法,以及示例代码。重点强调了测试函数必须以test开头,测试类以Test开头,并提供了相关命名规范。
最低0.47元/天 解锁文章
1498

被折叠的 条评论
为什么被折叠?



