Python的自动化测试框架之pytest,简单入门介绍

python的第三方测试框架,是基于unittest的扩展框架,比unittest更简洁,更高效.

Python的自动化测试框架之pytest,简单入门介绍_第1张图片

规则如下:

  • 所有的单测文件名都需要满足test_*.py格式或*_test.py格式。
  • 在单测文件中,可以包含test_开头的函数,也可以包含Test开头的类。
  • 在单测类中,可以包含一个或多个test_开头的函数。

装饰器

Python的自动化测试框架之pytest,简单入门介绍_第2张图片

单个参数传递

Python的自动化测试框架之pytest,简单入门介绍_第3张图片

使用多个fixture
如果用例需要用到多个fixture的返回数据,fixture也可以返回一个元祖,list或字典,然后从里面取出对应数据

Python的自动化测试框架之pytest,简单入门介绍_第4张图片 

也可以分成多个fixture,然后在用例中传多个fixture参数

Python的自动化测试框架之pytest,简单入门介绍_第5张图片 

pytest之参数化—ddt 

@pytest.mark.parametrize("参数名",列表)
参数名:用来接收每一项数据,并作为测试用例的参数;

Python的自动化测试框架之pytest,简单入门介绍_第6张图片

参数化与断言结合

 

import pytest


@pytest.mark.parametrize('input,sum_number', [('2+3', 5), ('2+5', 5), ('0+3', 5), ('2+7', 9)])
def test2(input, sum_number):
    # eval()函数用来执行一个字符串表达式,并返回表达式的值。
    assert eval(input) == sum_number


if __name__ == '__main__':
    pytest.main()

 

你可能感兴趣的:(Python的自动化测试框架之pytest,简单入门介绍)