学习 python 的 pytest 框架需要的基础知识和学习准备

2021-07-13 13:04

阅读:792

标签:单元测试   request   积累   架构   接口文档   处理   操作   host   ase   

测试从业者学习 python 应该掌握的内容:

 首先是变量和数据类型,其次列表、字典以及 Json 的一些处理,再者就是循环 判断以及函数或类这些内容。 其中的重点:

 1.循环判断以及字典这块是重点

 2.函数和类,类的学习这块要花较多时间去学习它的集成、封装、多态等,这 是一个不断积累的过程,先把前面的东西弄清楚了,然后去学如何用函数的方 式去处理这些比较基础的内容 python 大纲学习内容详见另一篇文章 扫下方二维码 电商项目直播 二、python 接口自动化 API 测试不同于 UI 自动化测试,它主要关注系统架构的业务逻辑层,或者说多 个或者两模块的逻辑关系,重点在逻辑关系。

 做接口测试前的准备工作

1、接口文档

 2、http 协议的知识

 3、对业务的熟悉程度

 python 做接口自动化需要准备的内容

 1. python3+第三方库 requests+pytest 框架,需要的环境都要准备好 选择 pytest 这个框架的原因

              1).非常容易上手,入门简单,文档丰富,文档中有很多实例可以参考 行业动态、技术交流、

              2).能够支持简单的单元测试和复杂的功能测试

              3).支持参数化 

              4).执行测试过程中可以将某些测试跳过,或者对某些预期失败的 case 标记成失败

              5).支持重复执行失败的 case

              6).支持运行由 nose, unittest 编写的测试 case

              7).具有很多第三方插件,并且可以自定义扩展

              8).方便的和持续集成工具集成

2. 接口文档的准备

             1). 接口文档至少包含四个部分

               1、请求的接口 2、请求的方式 3、请求 的参数 4、请求的返回结果

             2). 无接口文档使用抓包工具获取信息

             3). 接口测试包括接口自动化和手工接口测试

3. 开展接口自动化 前提:明确开展的目的,是要做单接口的监控还是交易流程的监控,或者是在 测试环境把所有接口都覆盖,又或者接口自动化测试是为了线上服务还是为了 线下测试环境服务 例如:现在要做的是上单接口的监控,监控的目的只为了保障接口的可用性, 证明这个接口是可用的就可以了。所以基于不同的目的设计接口测试是有不同 的测试点的,比如单接口的监控,只需要设计正向的用例就可以了,证明接口 是通的就可以了。因为线上做太多的测试容易产生特别多的脏数据。如果在测 试环境要做每个接口的全覆盖,那么每个接口的正向用例,异常用例都是要覆 盖到的,如果用例特别多要根据功能的侧重点来确定一些接口用例的范围选择 一个最优的集合做为接口用例的集合 注意点:每个用例尽可能独立执行,如果需要一些缓存数据要么写死要么长期 有效的,避免一个接口的用例需要依赖其他接口,这样做的原因是如果被依赖 的接口失败了可以避免依赖的接口执行是失败的 最后:环境、接口文档、用例的设计的集合以及接口的目的都确定后可以开始 写了

 4. 实际接口自动化代码编写说明 首先根据接口文档找到请求的 url 及接口地址加上 host 第二部分请求的参数 第三部分如果有头文件就把头文件放进来,如果没有头文件可以忽略 第四发出请求 第五对相应结果进行判断 相应结果判断关注的六部分:

         1).返回的状态码检查

         2).接口返回的关键参数的检查

         3).接口完整性就是它的层级关系是否正确

         4).参数的完整性

        5).特殊参数的检查

        6).功能性的检查 扫下方二维码 电商项目直播

 总结 首先环境的准备,其次做接口自动化的目的,基于目的设计测试用例,设计完 测试用例确定返回结果验证的程度,这些都确定好后按照 pytest 模版写用例就 可以了。 

3.Jenkins 持续集成 首先准备好 Jenkins 持续集成的服务器,然后去创建一个任务,创建完任务去 配置必要的信息例如 git 源,然后执行的命令构建后的一些操作,例如发邮件 等等创建任务的时候如果用 git 源,用 ssh 这种方式的话,需要去设 sshkey,然后 是设置这个任务的执行频率,一般是有几种方式:第一种周期进行项目构建, 它不关注你代码源是否是有变化的,它是按照设定的时间定期去执行设定的任 务,第二种是 icm 这种形式,它是定时检查源代码的变更,如果源代码有变更, 它就是执行设定的任务,如果源代码没有变更则不执行,还有其它的方 式,都 要根据实际需求去选择对应的方式。

 

好了学习 python 的 pytest 框架需要的基础知识和学习准备就介绍到这里了,希望能给初学者一些启发,若有什么不懂的,也可以加QQ群:862672474,欢迎大家一起来交流讨论。。。。。。。

学习 python 的 pytest 框架需要的基础知识和学习准备

标签:单元测试   request   积累   架构   接口文档   处理   操作   host   ase   

原文地址:https://www.cnblogs.com/pythonpipiha/p/9542851.html


评论


亲,登录后才可以留言!