0
点赞
收藏
分享

微信扫一扫

技术分享 | 接口自动化测试如何进行认证?

本文节选自霍格沃兹测试开发学社内部教材

在 HTTP 中,基本认证是允许使用 HTTP 协议的用户在请求时,提供用户名和密码的一种方式。在进行基本认证的过程里,请求的 HTTP 头字段会包含 Authorization 字段: ​​Authorization: Basic <凭证>​​,该凭证是用户和密码的组和的 base64 编码。碰到这种类型的接口,使用 Java 的 REST Assured 或者 Python 的 Requests 均可解决。

实战练习

Python 版本

  1. 使用 HTTPBasicAuth 类将 HTTP 基本身份验证附加到给定的 Request 对象
  2. 通过 auth 参数传递认证数据信息

import requests

from requests.auth import HTTPBasicAuth

def test_auth():
url = "https://httpbin.ceshiren.com/basic-auth/ad/123"
r = requests.get(url = url,
auth = HTTPBasicAuth("ad", "123"))
assert r.json()["user"]=='ad'

Java 版本

通过 ​​given()​​ 方法提供的 ​​auth().basic()​​ 方法完成用户名密码的验证,第一个参数输入用户名,第二个参数输入密码。

import static io.restassured.RestAssured.*;

public class Requests {
public static void main(String[] args) {
given().
auth().basic("ad", "123").
when().
get("https://httpbin.ceshiren.com/basic-auth/ad/123").
then().statusCode(200).log().all();
}
}

戳,获取更多有关测试的内容:

​​https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=51cto&timestamp=1661840880&author=QY ​​


举报

相关推荐

0 条评论