pytest学习(1)-执行方式与参数详解

  执行方式主要分为两种:

命令行执行

代码方式执行

1、命令行方式

1.在控制台执行 pytest

2.在控制台指定执行范围

a.指定某个模块 pytest test_module.py

b.指定某个目录及其子目录的所有测试文件 pytest testcase

c.指定某个某块的某个方法 pytest test_module::test_function

d.指定执行某模块的某个类中的某个用例 用“::”分割 pytesy test_model.py::test_class::test_method

2、通过python代码执行pytest

1.直接执行pytest.main() 【自动查找当前目录下,以test_开头的文件或者以_test结尾的py文件】

2.设置pytest的执行参数 pytest.main(['--html=./report.html','test_login.py'])【执行test_login.py文件,并生成html格式的报告】

方式2中,执行参数和插件参数,通过[]进行分割,[]内的多个参数通过‘逗号,’进行分割


常用执行参数和插件参数

执行参数

指定测试模块   test_model.py:

指定测试目录   testing/

指定执行某模块的某个类中的某个用例    test_model.py::test_class::test_method   

生成html格式的报告         --html=./report.html         

第01次失败,就停止测试   -x 或--exitfirst

出现n个失败就终止测试   --maxfail=n   

执行被装饰器 @pytest.mark.slow 装饰的所有测试用例       -m slow     

注意,-m后面不能带''号(单引号),只能带“”(双引号),不然识别不到

如果要运行多个标识的话,用表达式,如下

pytest -m "slow or faster" 运行有slow标识或 faster标识用例

pytest -m "slow and faster"  运行有slow和faster标识的用例

pytest -m "slow and not faster"  运行有slow和没有faster标识的用例


自动导入包 pkg.testing,并使用该包所在的目录,执行下面的用例  --pyargs pkg.testing

显示print内容   -s

详细结果        -v, --verbose

极简结果显示   -q, --quiet

输出xml文件格式,在与jenkins做集成时使用  --junit-xml=path

将最后的结果保存到本地文件中  --result-log=path

插件参数

多进程跑用例 ,NUM填写并发的进程数 -n NUM 

重试运行cases    --reruns NUM

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Pytest 入门学习 pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点: 简单灵活,...
    小娟_bb93阅读 2,474评论 0 5
  • Pytest 是一个比较成熟且功能完备的 Python 测试框架。其提供完善的在线文档,并有着大量的第三方插件和内...
    派派森森阅读 4,398评论 0 12
  • 1)py -3 -m pip install pytest 2)py.test --version --验证安装 ...
    0981b16f19c7阅读 3,062评论 0 0
  • 执行方式 为pytest命令行方式+ 通过python代码执行pytest pytest命令行执行 在控制台执行 ...
    五娃儿阅读 13,930评论 0 1
  • 我今天用一点时间来这里擦皮鞋。 这家小店,外包我的皮鞋擦洗上油,皮鞋包括其他皮具护理,是他们的营业范围。会员制,不...
    杨仲凯律师阅读 372评论 0 1