首页 > 其他分享 >自动化框架——pytest

自动化框架——pytest

时间:2022-11-06 23:57:57浏览次数:65  
标签:框架 pytest mark xfail 测试用例 测试 自动化 执行

 pytest的用处和学习目的:

简单灵活,容易上手
支持参数化
能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests)
pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如pytest-selenium(集成selenium)、pytest-html(完美html测试报告生成)、pytest-rerunfailures(失败case重复执行)、pytest-xdist(多CPU分发)等
测试用例的skip和xfail处理
可以很好的和jenkins集成
report框架----allure 也支持了pytest
环境搭建:

 

 

 2:命名规范:

所有的单测文件名都需要满足test_*.py格式或*_test.py格式。
在单测文件中,测试类以Test开头,并且不能带有 init 方法(注意:定义class时,需要以T开头,不然pytest是不会去运行该class的)
在单测类中,可以包含一个或多个test_开头的函数。
此时,在执行pytest命令时,会自动从当前目录及子目录中寻找符合上述约束的测试函数来执行。

 

 

 3:pytest的运行方式,断言:

1)通过pycharm的右键运行

 

2):通过命令行方式运行

 

 右键open in 选择终端的方式来输入命令行执行

 

3):通过main函数运行

 

 pytest的断言:

 pytest的运行清单:

pytest的测试固件:(setup teardown)

1.setup和teardown主要分为:模块级,类级,功能级,函数级。
2.存在于测试类内部
代码示例:

  • 函数级别setup()/teardown()

  • 2.2.类级别

pytest的执行顺序,跳过:

1)执行顺序

 

 

 

 2)不执行,跳过,或者满足条件跳过

 

 

 

 

@pytest.mark.xfail
除了上面学习的pytest.xfail(),xfai还有一种使用方法。就是@pytest.mark.xfail标签,他的含义是期望测试用例是失败的,但是不会影响测试用例的的执行。如果测试用例执行失败的则结果是xfail(不会额外显示出错误信息);如果测试用例执行成功的则结果是xpass。

吃个荔枝:我们直接在测试用例上加上@pytest.mark.xfail标签。

 

 

 

 

 

 pytest的mark标签

mark标签和skipif标签用来标记用例,作用于冒烟测试,不需要执行全部用例时来标记执行。

 

 

mark标签的注意事项,以及ini配置文件

 

文件名固定为pytest.ini,一般和测试驱动层放在一起,即根目录

 

 

 

 

 pytest的参数化和测试套件,fixture

 

 

 

参数化可以结合文件读写的方法,使用csv或txt文件进行传参。

fixture是为了两个方法之间的传参

 

 

 如果返回值不止一个,可以使用列表或字典进行返回,再到第二个方法进行列表或字典的读取。

 

标签:框架,pytest,mark,xfail,测试用例,测试,自动化,执行
From: https://www.cnblogs.com/lwcx/p/16862971.html

相关文章

  • 接口自动化测试用例如何设计
    转载请注明出处❤️作者:测试蔡坨坨原文链接:caituotuo.top/bc90038a.html你好,我是测试蔡坨坨。说到自动化测试,或者说接口自动化测试,多数人的第一反应是该用什么工具,比如:P......
  • 测试框架概述
                    ......
  • dubbo框架学习
     计科2001黄炯杰Dubbo是一个高性能服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案,使得应用可通过高性能RPC实现服务的输出和输入功能,和Sp......
  • 第三章:MyBatis框架Dao代理-动态代理简化代码
    第三章:MyBatis框架Dao代理内容列表◼Dao接口动态代理◼参数传递◼处理查询结果◼like和主键1Dao代理实现CURD1.1去掉Dao接口的实现类1.2getMapper......
  • 学习框架总结
    我们小组即将进入代码编写阶段,以下内容是小组成员对系统实现所涉及的架构进行学习后的内容总结。********************************************************************......
  • 如何设计一个完善可用的服务框架
    转载:https://www.cnblogs.com/imyalost/p/10343203.html部分内容参考自《京东基础架构建设之路》一个完善可用的RPC服务框架,需要包含以下几点:框架组成具体功能说明......
  • 服务框架基础知识总结
    转载:https://www.cnblogs.com/imyalost/p/10274797.html参考:《京东基础架构建设之路》 要组成一个基本的通信服务框架,最起码需要这三部分:统一的RPC框架、服务注册中心......
  • 3.前端框架Vue
    Vue是一套前端框架,免除原生javaScript中的DOM操作,简化书写。基于MVVM(Model-View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上官网:http://cn.vuejs.orgv-m......
  • Vue前端框架基础+Element的使用
    前置内容:AJAX基础+Axios快速入门+JSON使用目录1、VUE1.1概述1.2快速入门1.3Vue指令1.3.1v-bind&v-model指令1.3.2v-on指令1.3.3条件判断指令1.3.4v-for......
  • 云原生之旅 - 7)部署Terrform基础设施代码的自动化利器 Atlantis
    前言前面有几篇文章讲述了如何使用Terraform创建资源(基础设施即代码Terraform快速入门, 使用Terraform创建Kubernetes)以及 Kubernetes时代的包管理工具Helm ......