pytest的使用_新代子程序重复调用

pytest的使用_新代子程序重复调用Pytest执行用例规则Pytest在命令行中支持多种方式来运行和选择测试用例1.对某个目录下所有的用例pytest2.对模块中进行测试pytesttest_mod.py3.对文件夹进行

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Pytest执行用例规则

Pytest在命令行中支持多种方式来运行和选择测试用例

1.对某个目录下所有的用例

pytest

 

2.对模块中进行测试

pytest test_mod.py

 

3.对文件夹进行测试

pytest testing

 

4.通过标记来进行测试

pytest -m slow

这种方式会运行所有通过装饰器 @pytest.mark.slow进行装饰的测试用例。
 

5.通过关键字表达式来进行测试

pytest -k "MyClass and not method"

这种方式会执行文件名,类名以及函数名与给定的字符串表达式相匹配的测试用例。 上面的用例会执行TestMyClass.test_something但是不会执行TestMyClass.test_method_simple
 

6.通过节点id来测试

每个被选中的测试用例都会被分配一个唯一的nodeid,它由模块文件名和以下说明符组成:参数化的类名、函数名和参数,用::分隔。

# 测试test_1.py文件下的TestClass类下的test_method方法
pytest test_1.py::TestClass::test_method

# test1.py文件
class TestClass(object):
    def test_one(self):
        x = "hello"
        assert 'h' in x

    def test_method(self):  # 测试的就是这个方法
        x = "hello"
        assert 'h' in x

 

7.从包中运行测试

pytest --pyargs pkg.testing

这将会导入pkg.testing并使用其文件系统位置来查找和运行测试。
 

8.-q 简单打印,只打印测试用例的执行结果

pytest -q test_1.py

 

9.-s 详细打印

pytest -s test_1.py

 

10.-x 遇到错误时停止测试

pytest -x test_1.py

 

11. –maxfail=num,测试在第1(N)次测试失败后停止

pytest --maxfail=2 test_1.py

 

Pycharm运行Pytest

1.新建一个工程后,左上角Pycharm->Preference->Tools->Python Integrated Tools->Default test runner->选择pytest
pytest的使用_新代子程序重复调用
pytest的使用_新代子程序重复调用

2.pytest是可以兼容unittest脚本的,之前写的unittest用例也能用pytest框架去运行

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166038.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 20212.3 idea 激活码(最新序列号破解)

    20212.3 idea 激活码(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    261
  • java怎么输入字符_java怎么输入一个字符

    java怎么输入字符_java怎么输入一个字符思路:先创建一个Scanner对象,调用Scanner对象的next()方法获取控制台输入的字符串,返回的是一个String类型,因为没有nextChar()方法,所以调用String的charAt(0)方法获取第一个字符,这样一来,我们就输入了一个字符串。输入一个字符的方法:importjava.util.Scanner;Scannerscanner=newScanner(System…

    2022年7月8日
    30
  • Object转成JSONObject

    Object转成JSONObjectpublicvoidonNext(Objecto){LogUtil.i(“getFavorites”,”json=”+o.toString());//JSONObjectjson=JSON.parseObject(“{\”code\”:1001,\”timestamp\”:\”2018-11-0503:40:54\”}”);…

    2022年6月14日
    46
  • mysql日期格式化 yyyymmdd_mysql中时间日期格式化

    mysql日期格式化 yyyymmdd_mysql中时间日期格式化这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内:DATE_FORMAT(FROM_UNIXTIME(‘1997-10-0422:23:00′),’%Y/%m/%d’)mysql>SELECTsomethingFROMtableWHERETO_DAYS(NOW())-TO_DAYS(date_col)<=30;DAYO…

    2022年5月29日
    133
  • ntp 校时 linux 带源码

    ntp 校时 linux 带源码最近做个项目,想通过公司上的NTP服务器给板子校时,但是板子里没有ntpdate这个命令,下面是2个解决方法,1,找到ntpdate源代码,重新编译之后,手动运行,这个方法我上网上查了,比较复杂,据说NTP还与SSL有关,编译的时候必须把SSL也包含进去,于是就迟迟没有动工。2,突然有一天看到rtthread里也提供一个ntp的客户端,比较简单,就一个文件,也没几行,于是想着把这个.c文件移植到linux下,但我仔细研究了一下,发现这个文件的原始作者就是在linux下设计的。原始文件更简单.

    2022年6月18日
    24
  • pycharm代码灰色_python import灰色

    pycharm代码灰色_python import灰色问题表述:pycharm中老是import失败,呈现灰色线,我按照、CSDN博客上给的设置“右键点击自己的工作空间,找下面的MarkDirectoryas选择SourceRoot”,但是未解决问题,说明不是我的文件存放不在一个频道(import文件首先会在相同的目录下面寻找)问题在于:我把两个文件相似文件名同时放在一个sourceroot下面,可能会有干扰,于是,解决办法是:完美…

    2022年8月25日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号