python单元测试框架——pytest

Posted

tags:

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

官网:https://docs.pytest.org/en/latest/

pytest帮你写出更好的程序

1、安装:

  Ubuntu16.04安装pytest:

  pip3 install pytest

  pytest --version

    This is pytest version 3.2.3, imported from /usr/local/lib/python3.5/dist-packages/pytest.py

 

2、An example of a simple test:(一个简单的例子),命名为test_pytest1.py

1 def funx(x):
2     return x + 1
3 
4 
5 def test_answer():
6     assert funx(2) == 5

运行:

进入python脚本路径:pytest test_pytest1.py

  [email protected]:/home/ranxf/Python3单元测试/demo# pytest test_pytest1.py
============================= test session starts ==============================
platform linux -- Python 3.5.2, pytest-3.2.3, py-1.4.34, pluggy-0.4.0
rootdir: /home/ranxf/Python3单元测试/demo, inifile:
collected 1 item                                                                

test_pytest1.py F

=================================== FAILURES ===================================
_________________________________ test_answer __________________________________

    def test_answer():
>       assert funx(2) == 5
E       assert 3 == 5
E        +  where 3 = funx(2)

test_pytest1.py:8: AssertionError
=========================== 1 failed in 0.02 seconds ===========================

 

进入python脚本路径:pytest -q test_pytest1.py(加一个参数-q),运行结果:

[email protected]:/home/ranxf/Python3单元测试/demo# pytest -q test_pytest1.py
F
=================================== FAILURES ===================================
_________________________________ test_answer __________________________________

    def test_answer():
>       assert funx(2) == 5
E       assert 3 == 5
E        +  where 3 = funx(2)

test_pytest1.py:8: AssertionError
1 failed in 0.02 seconds

两种运行结果有一点差异,就是少了一些版本信息。

3、一个测试类中创建多个测试用例:

技术分享
 1 # 一个测试类种创建多个测试用例
 2 
 3 
 4 class TestClass:
 5     def test_one(self):
 6         x = "this"
 7         assert "s" in x
 8 
 9     def test_two(self):
10         x = "hello"
11         assert x == "hi"
View Code

 































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

python单元测试框架——pytest

Python- unittest 单元测试 (测试框架)和pytest 的区别

python单元测试pytest

python - pytest

Python接口自动化测试之pytest与unittest区别

Python接口自动化测试之pytest与unittest区别