python - 使用 pytest 选择覆盖测试套件
问题描述
我正在运行一组测试,pytest
并且还想用coverage
包测量它的覆盖率。
我的代码中有一些装饰器,使用以下方法将测试划分为几个套件:
@pytest.mark.firstgroup
def test_myfirsttest():
assert True is True
@pytest.mark.secondgroup
def test_mysecondtest():
assert False is False
我需要找到类似的东西:
coverage run --suite=firstgroup -m pytest
所以在这种情况下,只有第一个测试,因为它在正确的套件中,将用于测试覆盖率。
当我直接使用时,这些套件可以正常工作,pytest
但我不知道如何使用它们coverage
有没有办法配置coverage
来实现这一点?
解决方案
你可以将任何你想要的参数传递给 pytest。如果这条线有效:
pytest --something --also=another 1 2 foo bar
然后你可以像这样在覆盖范围内运行它:
coverage run -m pytest --something --also=another 1 2 foo bar
推荐阅读
- c# - 使用 Python 发布到 Azure IoT 中心 - 使用 C# 订阅不起作用
- javascript - 如何制定我的 for 循环代码以在特定的 html 表格单元格中插入值?
- javascript - JavaScript 中的多线程?
- mediawiki - Mediawiki:如何使用 {{PAGENAME}} 作为画廊中文件名的一部分?
- python - 如何在窗口顶部并始终在可见工作区上创建 tkinter 对话框?
- python - Python如何在连接两点时控制曲率
- jquery - 如何仅在我的网页上不恰当地调试 IE11 触发 oninput
- reactjs - 反应:如果字段留空,则有条件地呈现警报
- javascript - 启用 Javascript 调试导致 ERR_CERT_AUTHORITY_INVALID 错误
- bash - 如何从文件中逐行读取,计算特定字符