zoukankan      html  css  js  c++  java
  • pytest使用笔记(一)

    使用环境及预置条件:pycharm+win10+python3.6+pytest

    1,创建示范的测试功能脚本,另存为test_sample.py,代码如下:

    #  test_sample.py
    def func(x):
      return x + 1
    def test_answer():   assert func(3) == 5
    def test_answer1(): assert func(3) == 4

      

    2,使用M-DOS进入test_sample.py脚本存放的同级目录下,输入pytest,显示结果如下:

    到此可以清楚的看到是哪个用例发生错误,以及错误内容,用例执行结果及用例运行总时间。

    运行pytest命令时会运行在当前目录或者子目录中,格式为test_*.py或*_test.py的文件

    3,需要断言一些意料之中的报错时,可以使用raises命令断言异常:

    # content of test_sysexit.py
    import pytest
    def f():
      raise SystemExit(1)
    def test_mytest():
      with pytest.raises(SystemExit):
        f()

    4,运行简单模式测试报告:pytest -q

    完整模式与简单模式对照截图如下:

    5,在第N个错误时终止测试:

    pytest -x:在第一个测试用例发生错误时就停止运行,pytestpytest -x 效果对照图如下:

     pytest --maxfail=2,在第2个测试用例发生错误时就停止运行,截图如下:

     6,选择执行特定的测试用例:

    (1)运行单个文件的用例,test_mod.py就是要执行的测试用例文件:

    pytest test_mod.py

    (2)运行在同一个文件夹内的所有用例,testing/就是要执行测试用例所在的文件夹:

    pytest testing/

    (3)运行某些包含关键字的用例,如包含TestClass的用例:

    pytest -k "TestClass"

    (4)运行某一文件内特定模块的用例:

    TestClass是第一个class的名称,运行pytest test_class.py::TestClass会运行TestClass类下用例

     (5)运行用@ pytest.mark.slow装饰器修饰的用例:

    pytest -m slow
  • 相关阅读:
    [LeetCode] 39. Combination Sum 组合之和
    CSS3
    常见中文字体在CSS中的Unicode编码(宋体:5B8B4F53)
    List<Object> 使用Linq
    查看工作流详情页面
    java程序调用.net接口服务地址的写法
    C# Repeater 嵌套
    JavaScript刷新页面,不重复提交
    Migration-添加表(加外键)
    Migration-添加表
  • 原文地址:https://www.cnblogs.com/lza945/p/10320851.html
Copyright © 2011-2022 走看看