测试岗位面试题更新 2026-08-05

请说明采用 Requests 库对返回 JSON 数据格式的接口进行测试的具体做法,包括请求发送、数据校验和断言等步骤。

测试编码实现数据驱动问题排查pytestPython

考察说明

考查候选人使用 Requests 库进行接口测试的实操能力,重点在于处理 JSON 响应和断言。

回答思路

  1. 【回答框架 1】使用 Requests 库发送 HTTP 请求,通常用 GET 或 POST 方法,携带必要的参数或请求体,设置超时和 headers。对于 JSON 数据,可设置 Content-Type 为 application/json,并使用 json 参数自动序列化 Python 字典。
  2. 【回答框架 2】获取响应后,通过 response.json() 方法将响应体解析为 Python 字典或列表,便于后续断言。断言内容包括状态码、响应头、业务字段值、字段类型和数据完整性等,可使用 pytest 或 unittest 的断言方法。
  3. 【回答框架 3】对于复杂 JSON 结构,可遍历嵌套字段,或使用 JSONPath、递归函数等方式提取关键值。若接口涉及动态数据,可先运行一次获取示例,再设计断言。
  4. 【回答框架 4】为提升测试可维护性,可将接口地址、参数和断言数据配置化,封装公共请求函数,并结合 pytest 的 fixture 实现参数化,便于扩展和复用。
  5. 【关键点 1】使用 response.json() 解析 JSON 响应,确保响应格式正确。
  6. 【关键点 2】断言时结合状态码和关键业务字段,避免只看状态码。
  7. 【关键点 3】利用参数化与 fixture 提高用例复用性。
  8. 【易错点 1】误将 response.text 直接当字符串处理,忽略 JSON 结构。
  9. 【易错点 2】只断言状态码,忽略业务字段的校验。
  10. 【易错点 3】未处理 JSON 解析异常或网络错误,导致测试不稳定。