pytest框架与自动化测试应用
上QQ阅读APP看书,第一时间看更新

1.1.3 什么是pytest

pytest是一个基于Python的测试框架,用于编写和执行测试代码。pytest应用在自动化测试场合、单元自动化测试、API自动化测试、Web/App自动化测试等领域。我们可以使用pytest编写从简单到复杂的测试,即可以编写代码来测试API、数据库、UI等。

我们可以设想一下企业中实现pytest自动化测试执行之后的场景:开发人员在编写代码之后提交代码,然后我们便可以触发整个测试脚本的运行,运行之后,我们很快便可以得到测试的结果,那么可能当你还没有下班之前,测试结果便发到了你的邮箱,或者以短信的形式通知你,你需要把Bug改了才可以下班。

这种快速自动化测试出结果的方式最适合目前所需求的快速迭代,更解决了领导希望通过快速的反馈做下一步决策的问题。

1.pytest的特点和优点

pytest自动化测试框架会随着DevOps的落地实施而变得会越来越流行。它之所以流行,也是因为有很多的优点。

  • pytest是免费和开源的;
  • pytest有活跃的社区和维护组织;
  • pytest的语法简单灵活,容易上手;
  • 支持参数化,也就是支持数据驱动;
  • 支持测试用例的skip和xfail处理;
  • pytest可以自动检测测试文件和测试功能;
  • pytest允许我们运行整个测试套件的一部分;
  • 能够支持简单的单元测试和复杂的功能测试;

可以与Selenium/Appium等一起进行UI自动化测试,也可以与Requests一起进行接口自动化测试。

  • 可以很好地和Jenkins集成;
  • pytest具有很多第三方插件,并且可以自定义扩展;
  • pytest-allure可以生成完美的HTML测试报告;
  • pytest可以并行运行多个测试,从而减少测试套件的执行时间pytest-xdist;
  • 与以前的测试框架兼容,可执行由Unittest、Nose所写的测试脚本。

2.pytest的官网及资料地址

pytest官网及帮助文档网址https://docs.pytest.org/en/latest/。

pypi网址https://pypi.org/project/pytest/。

GitHub网址https://github.com/pytest-dev/pytest/。