pytest的使用_pytest测试框架从入门到精通

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测试框架从入门到精通
pytest的使用_pytest测试框架从入门到精通

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

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

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

(0)
上一篇 2022年7月28日 下午7:16
下一篇 2022年7月28日 下午7:16


相关推荐

  • MySQL 中<=>用法(长知识)

    MySQL 中<=>用法(长知识)

    2021年11月10日
    47
  • hibernate执行原生sql_hibernate的find方法

    hibernate执行原生sql_hibernate的find方法如果查询返回多个值用list()方法[java] viewplaincopyprint?public void testQuery(){          Configuration config = new Configuration().configure();          SessionFactory factory =

    2025年8月27日
    18
  • matlab中 trapz函数,trapz(matlab中trapz函数用法)

    matlab中 trapz函数,trapz(matlab中trapz函数用法)采用梯形法求积分下面两种用法等效 h pi 200 t 0 h pi 2 y sin t cos 2 t z1 trapz t y z2 trapz y hz1 1 0000z2 1 0000trapz X Y 错误使用 trapz line58 LENGTH X 必须等于 dim2 中 Y 的长度 想 只有一组数据直接用 trapz data 横坐标默认横坐标等

    2026年3月19日
    2
  • 如何设置python的环境变量_anaconda3添加环境变量

    如何设置python的环境变量_anaconda3添加环境变量在python项目实践中,不知道为什么我的os.getenv一直拿不到环境变量,于是我就试了三种设置环境变量的方法,中解决了问题。一.系统变量设置python环境变量的配置方法:1、第一步在我们的电脑上鼠标右键此电脑,选择属性,进去之后,点击高级系统设置,如下图所示2、第二步进去之后,点击环境变量,如下图所示:3、第三步进去环境变量界面之后,点击path,进行编辑,如下图所示:二.pycharm用户环境变量设置:1.打开文件—设置2.打开构建,执行,部署–python控制台–环境变量

    2022年8月29日
    5
  • LNK2019的常见情况及解决方法

    LNK2019的常见情况及解决方法导致 LNK2019 的常见问题 1 未链接的对象文件或包含符号定义的库 2 符号声明的拼写不与符号的定义相同 3 使用了函数 但类型或参数数目不匹配函数定义 4 声明但未定义的函数或变量 5 nbsp 调用约定是函数声明和函数定义之间的差异 6 符号定义在 c 文件中 但未使用 externC 在 c 文件中声明 7 符号定义为静态 并随后被外部文件引用 8 未定义类的静态成员 9 生成依赖项仅定义为解决方

    2025年10月30日
    5
  • 对《Java核心技术卷一》读者的一些建议

    对《Java核心技术卷一》读者的一些建议思想不会变 所以 Java 编程思想 还停留在第 4 版 2007 年 而技术是要更新迭代的 所以 Java 核心技术卷一 来到了第十版 2016 年 我们来看一下 Java 核心技术卷一 第十版的大纲 前九章 包括 Java 程序设计概述 Java 程序设计环境 Java 的基本程序设计结构 对象与类 继承 接口 lambda 表达式与内部类 异常 断言和日

    2026年3月19日
    2

发表回复

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

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