pytest

1. 查看详情:pytest   test.py 文件    

     -v   查看详情

3. 直接在目录下运行pytest

搜索当前目录及其子目录(不一定带test)以test_开头或者_test结尾的测试函数

5. 运行结果

 .    通过

F    fail

E    error

s     skip

x     xfail(预期失败实际失败)

X    xpass(预期失败但是通过)

6. 常用的pytest选项

--collect-only   当前会运行那些用例

-s     可以输出print的信息

-v     详细信息

-q     简化结果内容(常常和   -q  --tb=line   一起使用)

-m    运行带标记的用例(可以在标记之间添加 and or not关键词,注意使用双引号)

7. 预期异常

  import pytest

  with pytest.raises(TypeError):

  ...              # 代码逻辑预期会报TypeError的异常 

8. 标记

@pytest.mark.something

9. 跳过测试

@pytest.mark.skip()

10. 参数化

@pytest.mark.parametrize(argnames,argvalues)

argnames   逗号分隔的字符串列表     'summary, owner, done'

argvalues    value组成的列表    

[('sleep', None, False),

('wake', 'brian', False),

('breathe', 'BRIAN', True),

('eat eggs', 'BrIaN', False),

])

ids  作用:标识value里面的每一个参数,ids是一个字符串列表,和value对象的长度一致

11. --setup-show,可以回溯fixture的执行顺序

scope='function'   每个函数运行的时候均会调用

scope='class'        每个类运行的时候仅且仅运行一次

scope='module'    每个py文件运行的时候仅且仅一次

scope='session'    每次运行仅且仅一次

     

原文地址:https://www.cnblogs.com/wenshu/p/12258057.html