pytest基础学习第一课

什么是pytest

pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点:

1、简单灵活,容易上手,文档丰富;

注:看到下面实例确实容易上手,简单灵活和文档丰富目前还未能体会

2、支持参数化,可以细粒度地控制要测试的测试用例;

注:怎么细粒度控制测试用例和怎么参数化还不理解

3、能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests);

注:selenium/appnium,pytest+requests这些词代表什么含义还不清楚

4、pytest具有很多第三方插件,并且可以自定义扩展

  • 如pytest-selenium(集成selenium)、
  • pytest-html(完美html测试报告生成)、
  • pytest-rerunfailures(失败case重复执行)、
  • pytest-xdist(多CPU分发)、
  • pytest--ordering(控制测试运行的顺序)

注:这个NB的插件怎么用没有体会

5、测试用例的skip和xfail处理;

注:代表什么含义不清楚

6、可以很好的和CI工具结合,例如jenkins

注:怎么和Jenkins结合很值得研究

测试case编写规则

  • 测试文件以test_开头(以_test结尾也可以)
  • 测试类以Test开头,并且不能带有 init 方法
  • 测试函数以test_开头

运行pytest的前提是已经安装了pytest module,如果未安装可直接使用pip install pytest进行安装

快速示例

test_pytest_demo.py

import pytest

class TestClass:
    def test_one(self):
      x = "this"
      assert 'h' in x

    def test_two(self):
      x = "hello"
      assert hasattr(x, 'check')

    def test_three(self):
      a = "hello"
      b = "hello world"
    

你可能感兴趣的:(python,pytest,python)