Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >技术分享 | 接口自动化测试如何进行认证?

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

原创
作者头像
Hogwarts_测试
发布于 2022-08-30 06:57:53
发布于 2022-08-30 06:57:53
4010
举报

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

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

实战练习

Python 版本

  1. 使用 HTTPBasicAuth 类将 HTTP 基本身份验证附加到给定的 Request 对象
  2. 通过 auth 参数传递认证数据信息
代码语言:txt
AI代码解释
复制
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() 方法完成用户名密码的验证,第一个参数输入用户名,第二个参数输入密码。

代码语言:txt
AI代码解释
复制
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();
    }
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
聊一聊接口测试如何处理鉴权
在接口测试中,鉴权(Authorization)是验证请求方是否有权限访问特定资源的关键步骤。鉴权主要是验证用户是否有权限访问某个接口,确保安全性,因为很多接口都需要验证用户的身份和权限,否则会有安全风险。
漫谈测试
2025/04/29
1190
聊一聊接口测试如何处理鉴权
技术分享 | 接口自动化测试中,文件上传该如何测试?
在服务端自动化测试过程中,文件上传类型的接口对应的请求头中的 content-type 为 multipart/form-data; boundary=...,碰到这种类型的接口,使用 Java 的 REST Assured 或者 Python 的 Requests 均可解决。
Hogwarts_测试
2022/08/24
4390
实战演练接口自动化如何处理 Form 请求
在服务端自动化测试过程中,Form 请求代表请求过程中,请求体为表单类型。其特点为:数据量不大、数据层级不深的情况、使用键值对传递。Form 请求头中的content-type通常对应为application/x-www-form-urlencoded。碰到这种类型的接口,使用 Java 的 REST Assured 和 Python 的 Requests 均可解决。
Hogwarts_测试
2022/08/10
2790
Python接口自动化——Requests基础功能
调用了 cookies 属性即可成功得到了 Cookies,可以发现它是一个 RequestCookieJar 类型,然后我们用 items() 方法将其转化为元组组成的列表,遍历输出每一个 Cookie 的名和值,实现 Cookies 的遍历解析。
清风穆云
2021/08/09
4050
技术分享 | 接口自动化测试,如何实现多套环境的自动化测试?
在敏捷迭代的项目中,通常会将后台服务部署到多套测试环境。那么在进行接口自动化测试时,则需要将服务器的域名进行配置。使用一套接口测试脚本,通过切换域名地址配置,实现多套环境的自动化测试。
Hogwarts_测试
2022/09/01
5010
接口自动化测试之JSON Schema模式该如何使用?
JSON Schema 模式是一个词汇表,可用于注释和验证 JSON 文档。在实际工作中,对接口返回值进行断言校验,除了常用字段的断言检测以外,还要对其他字段的类型进行检测。对返回的字段一个个写断言显然是非常耗时的,这个时候就需要一个模板,可以定义好数据类型和匹配条件,除了关键参数外,其余可直接通过此模板来断言,JSON Schema 可以完美实现这样的需求。
Hogwarts_测试
2022/08/08
1.2K0
技术分享 | 接口自动化实战演练及测试考察点
实战演练章节需要结合技术分享接口测试章节的知识点(获取上方知识点可点击上方「接口测试」蓝色字体),完成对每种不同类型产品的接口自动化测试练习。
Hogwarts_测试
2022/09/05
1820
[接口测试_B] 13 pytest+requests实战练习
找不到免费的接口,所以依然以requests官方文档中出现的httpbin为示例,为了保持网络的稳定,可以把httpbin搭建在本地。
苦叶子
2018/07/25
7040
[接口测试_B] 13 pytest+requests实战练习
技术分享 | 接口自动化中如何完成接口加密与解密?
加密是一种限制对网络上传输数据的访问权的技术。将密文还原为原始明文的过程称为解密,它是加密的反向处理。在接口开发中使用加密、解密技术,可以防止机密数据被泄露或篡改。在接口自动化测试过程中,如果要验证加密接口响应值正确性的话,就必须使用正确的解密方式先对其实现解密,再完成验证。
Hogwarts_测试
2022/08/31
6200
技术分享 | 接口测试中,请求超时该怎么办?
A 发送请求,然后等待 B 的响应,同时开始超时计时,如果在超时时间内成功接收到响应,则结束等待和计时。如果到了超时时间还没有接收到响应,则结束等待同时此次通讯失败,这个过程叫做请求超时。在接口自动化测试过程中,也常常会碰到请求超时的场景。
Hogwarts_测试
2022/08/22
1K0
软件测试|使用代理配置快速定位接口测试脚本问题
在调试接口用例过程中,如果响应结果和预期结果不一致,则需要检查请求信息。通过代理获取自动化测试中的请求响应信息,对比与正常请求响应的区别,就能够更直观的排查请求错误,相当于编写代码时的 debug 功能。
霍格沃兹测试开发Muller老师
2023/01/09
4210
python requests模块
使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3)
用户5760343
2019/07/27
1.4K0
python接口测试之401错误的分析和解决(十六)
在接口的测试中,经常会遇到客户端向服务端发送一个请求,服务端返回401的错误,那么今天本文章就来说明在接口测试中如何分析以及解决该问题。
无涯WuYa
2018/10/25
6.1K0
python接口测试之401错误的分析和解决(十六)
python requests
Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码。
forxtz
2022/05/10
1.7K0
利器 | Java 接口自动化测试首选方案:REST Assured 实践 (一)
在 REST Assured 的官方 GitHub 上有这样一句简短的描述: Java DSL for easy testing of REST services 简约的 REST 服务测试 Java DSL
霍格沃兹测试开发
2022/05/26
1.1K0
掌握Postman,开启API测试新纪元!
Postman是一款流行的API测试工具和开发环境,旨在简化API开发过程、测试和文档编制。它提供了一套功能强大的工具,帮助开发人员更轻松地构建、测试和调试Web服务。
霍格沃兹测试开发Muller老师
2024/05/28
1280
Pytest测试实战
Pytest测试框架是动态语言Python专用的测试框架,使用起来非常的简单,这主要得易于它的设计,Pytest测试框架具备强大的功能,丰富的第三方插件,以及可扩展性好,可以很好的和unittest测试框架能够结合起来在项目中使用。本文章主要介绍Pytest测试框架中参数化的详细信息。
无涯WuYa
2022/06/16
8340
Pytest测试实战
技术分享 | app自动化测试(Android)-- 特殊控件 Toast 识别
Toast 是 Android 系统中的一种消息框类型,它属于一种轻量级的消息提示,常常以小弹框的形式出现,一般出现 1 到 2 秒会自动消失,可以出现在屏幕上中下任意位置。它不同于 Dialog,它没有焦点。Toast 的设计思想是尽可能的不引人注意,同时还向用户显示信息希望他们看到。
霍格沃兹测试开发学社
2022/06/24
4770
Requests库(十)接口请求认证
许多要求身份认证的web服务都接受 HTTP Basic Auth。这是最简单的一种身份认证,并且 Requests 对这种认证方式的支持是直接开箱即可用。
雷子
2021/03/15
8550
requests+BeautifulSoup详解
简介 Python标准库中提供了:urllib、urllib2、httplib等模块以供Http请求,但是,它的 API 太渣了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。 Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装,从而使得Pythoner进行网络请求时,变得美好了许多,使用Requests可以轻而易举的完成浏览器可有的任何操作。 请求的
人生不如戏
2018/07/05
1.6K0
推荐阅读
相关推荐
聊一聊接口测试如何处理鉴权
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档