requests 方法总结

当使用 `requests` 库进行接口自动化测试时,以下是一些详细的步骤和方法总结:

1. **安装 `requests` 库**:首先,确保你已经安装了 `requests` 库。可以使用 `pip` 命令进行安装:`pip install requests`。

2. **导入库**:在测试脚本的开头,导入 `requests` 库:`import requests`。

3. **发送 GET 请求**:使用 `requests.get(url, params=None, headers=None)` 方法发送 GET 请求。其中,`url` 是目标 URL,`params` 是可选的查询参数,`headers` 是可选的请求头部。示例:`response = requests.get('https://api.example.com')`。

4. **发送 POST 请求**:使用 `requests.post(url, data=None, json=None, headers=None)` 方法发送 POST 请求。其中,`url` 是目标 URL,`data` 是可选的表单数据,`json` 是可选的 JSON 数据,`headers` 是可选的请求头部。示例:`response = requests.post('https://api.example.com/login', data={'username': 'testuser', 'password': 'testpass'})`。

5. **处理响应**:`response` 对象包含了服务器返回的响应信息。你可以使用以下方法和属性来处理响应:

   - `response.status_code`:获取响应的状态码。
   - `response.text`:获取响应的文本内容。
   - `response.json()`:将响应的 JSON 数据解析为 Python 字典或列表。
   - `response.headers`:获取响应的头部信息。
   - `response.cookies`:获取响应的 cookie。

6. **设置请求头部**:使用 `headers` 参数可以设置请求的头部信息。示例:`headers = {'User-Agent': 'Mozilla/5.0'}`。

7. **处理请求参数**:使用 `params` 参数可以设置请求的查询参数。示例:`params = {'key': 'value'}`。

8. **处理请求体数据**:对于 POST 请求,可以使用 `data` 参数传递表单数据,或使用 `json` 参数传递 JSON 数据。

9. **处理请求超时**:使用 `timeout` 参数可以设置请求的超时时间(以秒为单位)。示例:`response = requests.get('https://api.example.com', timeout=5)`。

10. **处理异常**:在进行网络请求时,可能会遇到各种异常。你可以使用 `try-except` 块来捕获异常并处理错误情况。例如:

    ```python
    try:
        response = requests.get('https://api.example.com')
        response.raise_for_status()  # 检查响应的状态码
    except requests.exceptions.RequestException as e:
        print('请求发生异常:', e)
    ```

11. **处理身份验证**:如果接口需要身份验证,可以使用 `auth` 参数传递用户名和密码,或使用其他身份验证方式。示例:`response = requests.get('https://api.example.com', auth=('username', 'password'))`。

12. **处理会话状态**:如果需要在多个请求之间保持会话状态,可以使用 `Session()` 对象。创建 `Session()` 对象后,可以使用该对象发送多个请求,并在请求之间共享 cookie 和身份验证信息。

你可能感兴趣的:(接口测试,python)