目录 1.什么是单元测试框架 2.单元测试框架主要做什么 3.单元测试框架和自动化测试框架有什么关系 4.Pytest测试框架说明 5.Pytest框架和Unittest框架区别 (1)Unittest (2)Pytest (3)区别 1.什么是单元测试框架 单元测试是指在软件开发当中,针对软件的最小单位(函数,方法)进行正确性的检查测试. 2.单元测试框架主要做什么 测试发现:从多个文件里面去找到我们需要的测试用例. 测试执行:按照一定的顺序和规则去执行测试用例,并生成结果. 测试判断:通过断…
xUnit style 结构的 fixture用于初始化测试函数, pytest fixture是对传统的 xUnit 架构的setup/teardown功能的改进.pytest fixture为测试准备一个良好的测试环境,测试函数使用的每个 fixture通常有一个参数(以 fixture 命名),测试函数通过参数访问它们.本文将介绍pytest fixture的一些基本用法. @pytest.fixture import pytest @pytest.fixture() def login(…
一.pytest测试框架简介: (1)pytest是python的第三方测试框架,是基于unittest的扩展框架,比unittest更简洁,更高效. (2)pytest框架可以兼容unittest用例 (3)支持参数化 测试用例的skip和xfail,自动失败重试等处理 (4)能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appium等自动化测试.接口自动化测试(pytest+requests): (5)pytest并且具有很多第三方插件,并且可以自定义扩展,比较好用的…
PyTest是基于Python的开源测试框架,语法简单易用,有大量的插件,功能非常多.自动检测测试用例,支持参数化,跳过特定用例,失败重试等功能. 安装 pip install -U pytest  # 安装 pytest --version # 查看版本 pytest -h # 查看帮助信息 用例识别 pytest识别文件名为test_.py或者_test.py的测试文件 测试文件中可以在Test*类中写测试用例(测试用例以test_*开头,并且测试类不能有__init__方法) 不在Test…
PyTest支持xUnit style 结构, setup() 和 teardown() 方法用于初始化和清理测试环境,可以保证测试用例的独立性.pytest的setup/teardown方法包括:模块级别(setup_module/teardown_module).函数级别(setup_function/teardown_function).类级别(setup_class/ teardown_class).方法级别(setup_method/teardown_methond或者setup/te…
Allure 是一款轻量级.支持多语言的开源自动化测试报告生成框架,由Java语言开发,可以集成到 Jenkins. pytest 测试框架支持Allure 报告生成. pytest也可以生成junit格式的xml报告和HTML报告,命令如下: pytest test_demo.py --junitxml=report.xml pytest test_demo.py --html=report.html #需要安装插件:pip install pytest-html Allure 报告更加灵活美…
之前介绍了pytest以xUnit形式来写用例,下面来介绍pytest特有的方式来写用例 1.pytest fixture实例1 代码如下 from __future__ import print_function import pytest @pytest.fixture(scope='module') def resource_a_setup(request): print('\nresources_a_setup()') def resource_a_teardown(): print('…
1.引言 我有一个朋友是做Python自动化测试的.前几天他告诉我去参加一个大厂面试被刷了. 我问他是有没有总结被刷下来的原因.他说面试官问了一些 pytest 单元测试框架相关的知识,包括什么插件系统和用力筛选.但是他所在的公司用的技术是基于 unittest 的,没有用过 pytest. 我跟他说你可以和技术面试官说明,在实际过程当中你没有使用过 pytest,但是你可以后面再学.这哥们说:我就是这样跟面试官说的,但是面试官告诉我 pytest 现在已经是行业里面的主流,还在坚持用 unit…
前言 在上一篇文章<Pytest fixture及conftest详解>中,我们介绍了fixture的一些关键特性.用法.作用域.参数等,本篇文章将结合fixture及conftest实现一键动态切换自动化测试环境.在开始前,我们可以先思考几个问题:动态切换测试环境的目的是什么(能够解决什么问题)?该如何实现(实现方案)?具体步骤是什么(实现过程)? 一.动态切换测试环境的目的是什么? 动态切换测试环境的目的是什么,或者说它能解决什么样的问题: 便于快速验证功能在不同环境中的表现.比如:有的功…
在介绍一中简单介绍了pytest的安装和简单使用,接下来我们就要实际了解pytest了 一.pytest的用例发现规则 pytest可以在不同的函数.包中发现用例,发现的规则如下 文件名以test_开头的py文件 以test_开头的函数 以Test开头的类 以test_开头的方法(与2类似) 要注意的是所有的包必须要有init.py文件(在使用各种编辑器时会自动生成) 二.pytest运行方式 1.单独执行某一个py文件里所有的用例 pytest test_mod.py 2.执行目录下所有的用例…