pytest测试框架

Posted zhsp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytest测试框架相关的知识,希望对你有一定的参考价值。

简介

pytest与python自带的unittest测试框架类型,但是pytest使用起来更简洁高效。
pytest支持315种以上的插件,可以访问网址:http://plugincompat.herokuapp.com/
pytest帮助文档地址:https://docs.pytest.ort/

安装

pip install -U pytest
查看版本
pytest --version

用例识别与运行

用例的编写规范

  • 测试文件以test_开头(以_test结尾也可以)
  • 测试类以Test开头,并且不能带有init方法
  • 测试函数以test_开头
  • 断言使用基本的assert即可

实例
test_001.py

import pytest


def add(a, b):
    return a + b


def test_add():
    assert add(1, 2) == 3
    assert add(1, 1) == 2
    assert add(1, 99) == 100


class TestAdd:
    astr = "pytest"

    def test_01(self):
        assert "y" in self.astr

    def test_02(self):
        assert hasattr(self.astr, "check")


if __name__ == ‘__main__‘:
    pytest.main(["-s"])

结果

"D:Program FilesPython36-32python.exe" D:/git/test/test_pytest.py
============================= test session starts =============================
platform win32 -- Python 3.6.4, pytest-5.4.2, py-1.8.1, pluggy-0.13.1
rootdir: D:git	est
plugins: allure-pytest-2.8.16
collected 3 items

test_pytest.py ..F

================================== FAILURES ===================================
_______________________________ TestAdd.test_02 _______________________________

self = <test_pytest.TestAdd object at 0x03EB6930>

    def test_02(self):
>       assert hasattr(self.astr, "check")
E       AssertionError: assert False
E        +  where False = hasattr(‘pytest‘, ‘check‘)
E        +    where ‘pytest‘ = <test_pytest.TestAdd object at 0x03EB6930>.astr

test_pytest.py:26: AssertionError
=========================== short test summary info ===========================
FAILED test_pytest.py::TestAdd::test_02 - AssertionError: assert False
========================= 1 failed, 2 passed in 0.10s =========================

进程已结束,退出代码 0






以上是关于pytest测试框架的主要内容,如果未能解决你的问题,请参考以下文章

pytest接口自动化测试框架 | 用python代码测试接口

python pytest测试框架介绍三

手把手教你pytest测试框架—— 初识框架

使用 Pytest 框架进行 Argparse 测试

python pytest测试框架介绍五---日志实时输出

pytest框架-介绍Mark命令运行用例。。。。