requests接口自动化测试
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换传递和控制管理过程以及系统间的相互逻辑依赖关系等。1理解什么是接口接口一般来说有两种一种是程序内部的接口一种是系统对外的接口。系统对外的接口比如你要从别的网站或服务器上获取资源或信息别人肯定不会把数据库共享给你他只能给你提供一个他们写好的方法来获取数据你引用他提供的接口就能使用他写好的方法从而达到数据共享的目的比如说咱们用的app、网址这些它在进行数据处理的时候都是通过接口来进行调用的。程序内部的接口方法与方法之间模块与模块之间的交互程序内部抛出的接口比如bbs系统有登录模块、发帖模块等等那你要发帖就必须先登录要发帖就得登录那么这两个模块就得有交互它就会抛出一个接口供内部系统进行调用。2常见的接口1)webService接口是走soap协议通过http传输请求报文和返回报文都是xml格式的我们在测试的时候都用通过工具才能进行调用测试。可以使用的工具有SoapUI、jmeter、loadrunner等;2)http api接口是走http协议通过路径来区分调用的方法请求报文都是key-value形式的返回报文一般都是json串有get和post等方法这也是最常用的两种请求方式。可以使用的工具有postman、RESTClient、jmeter、loadrunner等;3requests接口自动化基本流程requests 是一个用于发送 HTTP 请求的 Python 库它非常适合用于接口测试。以下是如何使用 requests 进行接口测试的基本步骤1)安装 requests如果你还没有安装 requests可以使用 pip 进行安装pip install requests2)发送 GET 请求import requests response requests.get(https://api.example.com/data) print(response.text)3)发送 POST 请求import requests data { key1: value1, key2: value2 } response requests.post(https://api.example.com/data, datadata) print(response.text)4)处理 JSON 数据如果 API 返回 JSON 数据你可以使用 response.json() 方法将其解析为 Python 对象response requests.get(https://api.example.com/data) data response.json() print(data)5)检查响应状态码你可以检查 HTTP 响应的状态码以确保请求成功if response.status_code 200: print(请求成功) else: print(f请求失败状态码{response.status_code})6)添加请求头如果需要添加自定义的请求头如 Authorization可以这样做headers { Authorization: Bearer YOUR_TOKEN } response requests.get(https://api.example.com/data, headersheaders)7)错误处理如果请求失败requests 会抛出一个异常。你可以使用 try-except 结构来处理这些异常try: response requests.get(https://api.example.com/data) response.raise_for_status() # 如果不是 2xx 响应会抛出 HTTPError 异常 except requests.exceptions.HTTPError as errh: print (Http Error:,errh) except requests.exceptions.ConnectionError as errc: print (Error Connecting:,errc) except requests.exceptions.Timeout as errt: print (Timeout Error:,errt) except requests.exceptions.RequestException as err: print (Something Else:,err)