如果任何单元测试失败,如何使 Python 的覆盖工具失败?
Posted
技术标签:
【中文标题】如果任何单元测试失败,如何使 Python 的覆盖工具失败?【英文标题】:How can I make Python's coverage tool fail if any unit tests fail? 【发布时间】:2019-02-06 00:59:09 【问题描述】:我想使用一个 shell 脚本来确保我的单元测试通过并且我的代码有足够的测试覆盖率。我只想运行我的测试代码一次。
我希望我可以通过 coverage 工具运行我的测试,并且从那一次运行开始:
-
如果一项或多项测试失败,“coverage run”命令将失败,这将通知我的 shell 脚本出现问题。
或者如果覆盖不足,“覆盖运行”命令将失败(使用 --fail-under)。
如果不重定向命令输出和搜索关键字(例如失败),您将如何做到这一点?
【问题讨论】:
你在使用pytest-cov吗?我现在不在工作中查看我正在使用的设置,我认为您要问的是 pytest-cov 的默认设置。 您确定这不能按原样工作吗?你是如何进行测试的? 【参考方案1】:coverage run
将以您正在运行的程序的退出状态退出。如果你以这种方式运行你的测试运行器,那么退出状态应该是透明的。
【讨论】:
以上是关于如果任何单元测试失败,如何使 Python 的覆盖工具失败?的主要内容,如果未能解决你的问题,请参考以下文章