zoukankan      html  css  js  c++  java
  • pytest测试框架入门

    安装pytest

    命令行输入:

    pip install -U pytest

    检查是否安装了正确的版本:

    λ pytest --version
    This is pytest version 5.3.5, imported from e:python37libsite-packagespytest\__init__.py
    setuptools registered plugins:
      pytest-html-2.0.1 at e:python37libsite-packagespytest_htmlplugin.py
      pytest-metadata-1.8.0 at e:python37libsite-packagespytest_metadataplugin.py

    一个简单的demo

    import pytest
    
    def func(x):
        return x + 1
    
    def test_answer():
        assert func(3) == 5

    运行demo

    首先进入到此demo文件的路径下,然后执行 pytest ,会运行名称为test*.py的文件(*匹配任意符合字母和数字)

    pytest运行规则查找当前目录及其子目录下以test_.py或_test.py文件,找到文件后,在文件中找到以test开头函数并执行。

    C:UsershaiyDesktopcodeiot_yjb_api
    λ pytest
    ============================ test session starts ============================= platform win32 -- Python 3.7.1rc1, pytest-5.3.5, py-1.8.1, pluggy-0.13.1
    rootdir: C:UsershaiyDesktopcodeiot_yjb_api
    plugins: html-2.0.1, metadata-1.8.0
    collected 1 item
    
    test_api.py F                                                           [100%]
    
    ================================== FAILURES ================================== ________________________________ test_answer _________________________________
    
        def test_answer():
    >       assert func(3) == 5
    E    assert 4 == 5
    E     +  where 4 = func(3)
    
    test_api.py:9: AssertionError
    ============================= 1 failed in 0.23s =============================

    此测试返回失败报告,因为 func(3) 不返 5 .

     如何编写pytest测试样例

    通过上面的实例,我们发现编写pytest测试样例非常简单,只需要按照下面的规则:

    • 测试文件以test_开头(以_test结尾也可以)
    • 测试类以Test开头,并且不能带有 init 方法
    • 测试函数以test_开头
    • 断言使用基本的assert即可
  • 相关阅读:
    【算法总结】搜索算法(上)
    New Beginning
    好想退役啊【笑
    【NOIP2012】DAY1+DAY2题解
    【NOIP2013】Day2不完全题解+代码
    【NOIP2013】DAY1题解+代码
    【NOIP2014】DAY2题解+代码
    【游记】NOIP2015造纸记
    【ACM-ICPC 2018 徐州赛区网络预赛】E. End Fantasy VIX 血辣 (矩阵运算的推广)
    【ACM-ICPC 2018 沈阳赛区网络预赛】不太敢自称官方的出题人题解
  • 原文地址:https://www.cnblogs.com/huny/p/13363360.html
Copyright © 2011-2022 走看看