pytest前置后置条件

江枫思渺然 提交于 2019-11-26 16:10:06

已知被测对象demo.py

 

#!/usr/bin/python
# -*- coding: utf-8 -*-

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

def minus(a, b):
    return a-b1.测试函数案例 test_demo_module.py
  • 文件必须要test_*.py*_test.py来命名
  • 测试case命名必须要test开头,最好是test_
  • 判断使用assert
  • setup_module, 所有case执行的前置条件,只运行一次
  • teardown_module, 所有case执行的后置条件,只运行一次
  • setup_function, 每个测试用例的前置条件
  • teardown_function, 每个测试用例的后置条件

 

2.测试类案例

test_demo_class.py

  • 文件必须要test_*.py*_test.py来命名
  • 测试类命名必须要Test开头
  • 测试case命名必须要test开头,最好是test_
  • 判断使用assert
  • setup_class, 所有case执行的前置条件,只运行一次
  • teardown_class, 所有case执行的后置条件,只运行一次
  • setup, 每个测试用例的前置条件
  • teardown, 每个测试用例的后置条件

 

3. pytest执行命令:
  • pytest: 查找当前目录及子目录下所有test_*.py*_test.py的测试文件,然后一一执行文件内以test开头的函数
  • pytest ut/: 查找ut目录及子目录下所有test_*.py*_test.py的测试文件,然后一一执行文件内以test开头的函数
  • pytest test_demo_class.py: 可以指定测试文件
  • pytest test_demo_module.py::test_add: 执行指定测试文件中的测试case
  • pytest test_demo_class.py::TestDemo[::test_add]: 执行指定测试文件中的测试类[中的测试case]
  • pytest -k EXPRESSION: 执行和表达式匹配的测试案例
4. 常用参数

  -s : 打印测试案例中print信息

  -q : 只显示结果[. F E S], 不展示过程

  -x : 遇到失败案例,停止测试

  --maxfail=num: 失败num个案例后,停止测试

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!