pytest简介和环境安装

pytest简介

pytest是一个用于Python的测试框架。它是一个功能强大且易于使用的工具,用于编写和运行单元测试、集成测试和功能测试。pytest提供了丰富的功能和灵活的用例编写风格,使得测试代码编写变得简单而高效。

使用pytest,可以编写独立的测试函数或方法,使用断言来验证代码的行为是否符合预期。pytest还提供了丰富的插件生态系统,可以扩展其功能,例如生成测试报告、集成持续集成工具等。

相较于Python标准库中的unittest模块,pytest具有更简洁的语法和更丰富的功能。它支持自动发现测试文件和测试函数,可以方便地运行部分或全部的测试用例。此外,pytest还提供了丰富的命令行选项和插件,以满足不同项目和测试需求。

总而言之,pytest是一个功能强大、灵活且易于使用的Python测试框架,被广泛用于开发人员和测试人员之间的单元测试和集成测试。

 

pytest常用的库及作用

可以将pytest所属插件放到requirements.txt文件

pytest
pytest-xdist  #测试用例分布式执行。多CPU分发。
pytest-ordering #用于改变测试用例的执行顺序(从上到下)
pytest-rerunfailures #用例失败后重跑
pytest-html  #生成漂亮的HTML测试报告,包含测试用例的结果、统计信息和失败原因等。
allure-pytest #用于生成美观的测试报告
pytest-cov #用于测试代码覆盖率的插件。它可以生成关于代码覆盖率的报告,帮助您确定测试是否覆盖了足够的代码。
pytest-xdist #提供并行测试的功能,可以加快测试的执行速度。它可以将测试用例分发到多个进程或多台机器上并行运行,从而提高测试的效率。
pytest-mock #提供了对Python的内置mock库的集成支持,方便进行模拟和替换操作,用于测试中的依赖项和外部资源。
pytest-django #用于在Django项目中进行测试的插件。它提供了一些特定于Django的功能,如自动创建测试数据库、设置和销毁测试环境等。
pytest-selenium #用于在Web应用程序中进行自动化测试的插件。它提供了与Selenium WebDriver的集成,可以方便地进行浏览器自动化测试。
pytest-flask # 用于在Flask应用程序中进行测试的插件。它提供了一些特定于Flask的功能,如测试客户端、设置和销毁应用程序上下文等。
 
pytest使用简介
1.模块名必须以test_开头或者_test结尾
2.测试类必须以Test开头,并且不能有init方法。
3.测试方法必须以test开头
 
import pytest


class Test_case:
    @pytest.mark.smoke
    def test_01(self):
        print("01测试用例")
    @pytest.mark.productmanage
    def test_02(self):
        print("02测试用例")
    def test_03(self):
        print("03测试用例")

if __name__ == '__main__':
    pytest.main(['-vs','./test_demo.py::Test_case'])

 

posted @ 2023-10-22 17:43  菌子石雨  阅读(14)  评论(0编辑  收藏  举报