接口自动化测试:pytest基础讲解

这篇具有很好参考价值的文章主要介绍了接口自动化测试:pytest基础讲解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

为什么要做接⼝测试?

只靠前端测试很难确保很⾼的覆盖率。接⼝测试,可以模拟出各种类型的⼊参,包括⼀些在前端模拟不出来的⼊参,还能根据接⼝⽂档的定义,设计出相对完善的⼊参值,在接⼝层保证质量,剩余的绝⼤多数问题就是应⽤程序⾃⾝的交互和数据展⽰问题。

接⼝测试相对于交互界⾯测试和功能测试来说,更容易实现⾃动化,执⾏起来⽐较稳定,维护成本也⽐较低。

接⼝⾃动化适⽤于回归测试、线上接⼝巡检等,可以减少⼈⼯回归测试的⼈⼒成本、也可以监控线上接⼝健康情况。

前、后端系统分离,从安全层⾯来说,只依赖前端进⾏不能满⾜安全要求,绕过前端相对容易,所以需要后端同样进⾏输⼊校验,可以依赖接⼝测试去验证了。

⼀、接⼝测试流程

1. 如何测试接⼝ ?

怎么测试接⼝?根据什么来测接⼝呢?这就需要开发提供的接⼝⽂档了,接⼝⽂档和功能测试的需求说明书的功能是⼀样的。包括:接⼝说明、调⽤的url,请求⽅式(Get or Post orRPC协议的框架,Doubbo接⼝协议),请求参数、参数类型、请求参数说明,返回结果说明。有了接⼝⽂档后,我们就可以设计接⼝测试⽤例,⼀般接⼝测试的⽤例编写可以从以下⼏个⽅⾯进⾏:

2. 接⼝⿊盒⽩盒的测试⽅法

◦ 接⼝通过性验证(最基本的)
▪ 传递正确的参数,是否返回正确的结果。
◦ 参数组合验证
▪ 因为参数有必传和⾮必传,
▪ 参数的类型和⻓度,
▪ 以及传递时可能业务上的⼀些限制,
▪ 测试参数的排列组合,保证所有的情况都能覆盖到,
◦ 接⼝的安全性&异常验证

例如绕过验证,⽐如提交订单时,在传递商品价格参数时,修改商品价格,看后端是否做了校验,或者⽀付时,修改订单⾦额,如果能以改之后的⾦额⽀付,这个接⼝就是有问题了。

绕过⾝份验证,就是某个功能只有特殊权限的⽤⼾才能操作,那我穿⼀个普通的⽤⼾,是不是也能操作。

参数是否加密,这个关系到⼀些账号的安全,⽐如我们登录⼀些⽹站时,他要将我们的登录信息进⾏加密。

▪ 密码安全规则,设置密码时复杂程度的校验。
▪ 订单幂等的校验,两个同⼀订单号的订单是否能提交⽀付
▪ 修改⽀付订单的⽀付状态
▪ 异常测试(try catch测试)
▪ 逻辑或、逻辑与的测试
▪ 接⼝参数边界测试0和负数 还有int最⼤值等等;
◦ 根据业务逻辑来设计⽤例
▪ 符合业务逻辑的意思是指,此接⼝包含了这个功能逻辑的所有应⽤场景;
▪ 与其他业务接⼝业务的组合,排除对其他业务的影响;

3. 测试分析

◦ 接⼝测试范围&优先级
◦ 独⽴接⼝测试分析
◦ 联调接⼝测试分析
◦ 接⼝测试框架分析
◦ 涉及到问题:
▪ 没有接⼝测试设计⽂档怎么办
▪ 接⼝设计⽂档⾮常粗糙怎么办
▪ 接⼝设计⽂档看不懂怎么办

4. 冒烟测试

◦ ⼯具选择,postman
◦ 如何使⽤⼯具进⾏冒烟测试,postman使⽤
◦ 冒烟测试标准制定
▪ 新的项⽬,冒烟测试标准制定不要过⾼
▪ 所有待测功能正常使⽤,流程都能通过

5. 接⼝测试脚本编写

◦ 常量参数
◦ 变量参数
◦ 循环处理测试数据
◦ 对接⼝请求回的结果做assert断⾔
◦ 通过⽂件提取测试数据

6. ⼯作总结

◦ 接⼝测试流程总结
◦ 接⼝测试技术总结
▪ 导⼊库⽂件
▪ 发送接⼝请求
▪ 输⼊常量查询条件
▪ 获取接⼝返回结果
▪ 预期输⼊与实际结果⽐对
◦ 接⼝测试⼯作总结

⼆、postman接⼝测试

1. 接⼝的概念

输⼊与输出的验证

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试

2. 接⼝组成

https://svr-6-9008-api.share.51env.net/v1/article/view?id=1
◦ 协议 https
◦ 域名 svr-6-9008-api.share.51env.net
◦ 端⼝号
◦ 路径 /v1/article/view?
◦ 参数 id=1

3. 接⼝的要素

◦ 请求地址 url
◦ 请求⽅法 get/post/rpc/doubbo协议等等;
◦ 请求参数 id
◦ 响应

4. postman接⼝测试

◦ 接⼝⽤例测试
pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试

◦ 请求成功

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试

◦ 断⾔/检查
▪ 响应结果断⾔
▪ 响应数据断⾔
▪ 响应时间

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试

三、pytest框架

1. 接⼝测试python常⽤的俩个框架区别

◦ unittest框架必须遵守需要遵守以下规则
▪ 测试⽂件必须先import unittest
▪ 测试类必须继承unittest.TestCase
▪ 测试⽅法必须以“test_”开头
▪ 测试类必须要⽤unittest.main()⽅法

pytest是python的第三⽅测试框架,是基于unittest的扩展框架,⽐unittest更简洁,更⾼效。使⽤pytest必须遵守以下规则

▪ 测试⽂件名必须以“test_”开头,或者“test_”结尾
▪ 测试⽅法必须以“test_”开头
▪ 测试类命名必须以“Test”开头

2. pytest测试框架安装

3. pytest切换

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试
pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试
4. 测试case编写

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试

5. 接⼝⾃动化报告⽣成

◦ ⾸先安装allure:https://www.cnblogs.com/Durant0420/p/15867983.html

◦ 然后allure的使⽤
• pytest --alluredir=report 执⾏测试⽂件中的⽤例
• allure generate report --clean ⽣成测试报告,–clean覆盖之前的报告

6. 接⼝测试过程

◦ 导⼊库⽂件
◦ 发送接⼝请求
◦ 输⼊常量查询条件
◦ 获取接⼝返回结果
◦ 预期输⼊与实际结果⽐对

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试

最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】
pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试
全套资料获取方式:

pytest接口自动化,程序员,职场经验,软件测试,pytest,前端,接口测试,接口自动化测试,自动化测试文章来源地址https://www.toymoban.com/news/detail-731869.html

到了这里,关于接口自动化测试:pytest基础讲解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python pytest 最简单的接口自动化测试框架

    最近由于工作的原因,需要开发一个接口自动化测试框架,使用pytest框架、数据驱动,并展示直观的测试报告。 具体的开发过程如下: 安装必要的库: pytest:用于编写和运行测试用例。 requests:用于发送 HTTP 请求。 pytest-html:用于生成 HTML 格式的测试报告。 可以使用以下命

    2024年03月19日
    浏览(88)
  • 接口自动化测试:Python+Pytest+Requests+Allure

    本项目实现了对Daily Cost的接口测试: Python+Requests 发送和处理HTTP协议的请求接口 Pytest 作为测试执行器 YAML 管理测试数据 Allure 来生成测试报告。 本项目是参考了pytestDemo做了自己的实现。 项目结构 api : 接口封装层,如封装HTTP接口为Python接口 commom : 从文件中读取数据等各种

    2024年02月09日
    浏览(42)
  • python+pytest接口自动化之测试函数、测试类/测试方法的封装

    今天呢,笔者想和大家聊聊python+pytest接口自动化中将代码进行封装,只有将测试代码进行封装,才能被测试框架识别执行。 例如单个接口的请求代码如下: 假设我们需要将上面这段代码编写成测试框架能执行的测试用例,仅仅只是这样写代码显然是不够的,还需要进行如下

    2024年03月09日
    浏览(47)
  • 接口自动化测试框架(pytest+allure+aiohttp+ 用例自动生成)

    近期准备优先做接口测试的覆盖,为此需要开发一个测试框架,经过思考,这次依然想做点儿不一样的东西。 接口测试是比较讲究效率的,测试人员会希望很快能得到结果反馈,然而接口的数量一般都很多,而且会越来越多,所以提高执行效率很有必要 接口测试的用例其实

    2024年02月07日
    浏览(42)
  • 基于Pytest+Allure+Excel的接口自动化测试框架

    Allure 框架是一个灵活的、轻量级的、支持多语言的测试报告工具,它不仅以 Web 的方式展示了简介的测试结果,而且允许参与开发过程的每个人可以从日常执行的测试中,最大限度地提取有用信息。 Allure 是由 Java 语言开发的,支持 Pytest,JaveScript、PHP、Ruby 等。 从 DEV/QA 的角

    2024年02月09日
    浏览(52)
  • 接口自动化测试框架开发(pytest+allure+aiohttp+ 用例自动生成)

    近期准备优先做接口测试的覆盖,为此需要开发一个测试框架,经过思考,这次依然想做点儿不一样的东西。 接口测试是比较讲究效率的,测试人员会希望很快能得到结果反馈,然而接口的数量一般都很多,而且会越来越多,所以提高执行效率很有必要 接口测试的用例其实

    2024年01月23日
    浏览(34)
  • 接口自动化测试框架开发 (pytest+allure+aiohttp+ 用例自动生成)

    目录 前言: 第一部分(整个过程都要求是异步非阻塞的) 读取 yaml 测试用例 http 请求测试接口 收集测试数据 第二部分 动态生成 pytest 认可的测试用例 后续(yml 测试文件自动生成) 前言: 开发一个接口自动化测试框架是一个很好的方式,可以提高测试效率和准确性。在这

    2024年02月16日
    浏览(45)
  • Python+Requests+PyTest+Excel+Allure 接口自动化测试实战

    本文主要介绍了Python+Requess+PyTest+Excel+Allure 接口自动化测试实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 Unittest是Python标准库中自带的单元测试框架,Unittest有时候也被称为PyUnit,就像

    2024年02月07日
    浏览(39)
  • 一个简单的接口自动化测试框架:Python+Requests+Pytest+Allure

    project:api_test ——api_keyword ————api_key.py:接口驱动类 ——case ————test_cases.py:测试套件和测试用例 ——report_allure( 无需创建 ):allure报告 ——result( 无需创建 ):测试用例运行结果 ——VAR ————VAR.py:常量类 conftest.py:项目级别fixture main.py:主函数

    2024年02月03日
    浏览(38)
  • Python接口自动化测试-篇1(postman+requests+pytest+allure)

    Python接口自动化测试是一种使用Python编程语言来编写脚本以自动执行针对应用程序接口(APIs)的测试过程。这种测试方法专注于检查系统的不同组件或服务之间的交互,确保它们按照预期规范进行通信,而不涉及用户界面(UI)的验证。 目录 一、接口测试基础 二、工具实现

    2024年04月17日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包