一个用于过滤基于unittest测试类的pytest插件
项目描述
pytest-unittest-filter
一个用于过滤基于unittest测试类的pytest插件
描述
pytest
默认支持基于 unittest
的测试,但有一个缺点:没有方法排除某些测试用例(unittest.TestCase
子类)不被收集。pytest 提供了 python_classes
配置选项,但如文档中所述,此选项不会影响 unittest.TestCase
子类
请注意,无论此选项如何,基于 unittest.TestCase 的类总是被收集,因为 unittest 使用自己的收集框架来收集这些测试。
对于使用内置的 unittest
测试运行器(python -m unittest
)的项目来说,这可能是可以接受的,因为后者也没有任何包含/排除选项,但如果项目测试套件与 nose
测试运行器一起使用并依赖于 硬编码 的首字母下划线过滤器,可能会不方便。
该插件提供了两个新的配置选项:python_unittest_classes
和 python_unittest_exclude_underscore
。
python_unittest_classes
此选项类似于上面提到的 python_classes
选项,但用于 unittest.TestCase
子类
一个或多个名称前缀或 glob 样式模式,用于确定哪些类被认为是测试收集的对象。通过在模式之间添加空格来搜索多个 glob 模式。
默认值为 none(无值),即默认情况下收集所有 unittest.TestCase
子类。
示例
-
只包含名称以
Test
或Check
开头的类[pytest] python_unittest_classes = Test* Check*
或者
[pytest] python_unittest_classes = Test Check
-
只包含名称以
TestCase
结尾的类[pytest] python_unittest_classes = *TestCase
-
排除以下划线开头的类名称
[pytest] python_unittest_classes = [!_]*
python_unittest_exclude_underscore
这个布尔选项可以用来模拟硬编码的nose选择器行为。如果选项设置为true
,则所有以_
开头的类名称都将被排除。因此,上面的最后一个示例可以重写为以下内容
[pytest]
python_unittest_exclude_underscore = true
默认值为false
。
这两个选项可以组合使用。以下两个示例是等效的
[pytest]
python_unittest_classes = [!_]*Test [!_]*Check
[pytest]
python_unittest_classes = *Test *Check
python_unittest_exclude_underscore = true
变更日志
0.2.1 (2019-01-12)
- 修复了将
python_unittest_exclude_underscore
应用于任何收集的项目(而不仅仅是unittest类)的bug
0.2.0 (2019-01-11)
- 添加了
python_unittest_exclude_underscore
选项
0.1.0 (2018-10-27)
- 初始发布
许可证
项目详情
下载文件
下载适合您平台的应用程序。如果您不确定选择哪一个,请了解有关安装包的更多信息。
源分布
构建分布
pytest-unittest-filter-0.2.1.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 92dc98bb5e3965e90246d93ce6f23bbc83fa0d8fa3610245b47400f48ac5045b |
|
MD5 | 5025a30a900828095df552e7709dc690 |
|
BLAKE2b-256 | fb35b047e86881e80273291f287e8d9c9ad41f522dfce3e3ca502a89740f5f6c |
pytest_unittest_filter-0.2.1-py2.py3-none-any.whl的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 09f8ac3c93ea7dfcb3215ea0c2cb5a42dbe545bacabf00bf2390580c68ea1714 |
|
MD5 | f201ec903688edcb578985e3d22d2ee9 |
|
BLAKE2b-256 | e0e0f94d49b0c7f75f2f794798e1621684728e16c75501ad028681419c2731ea |