如何在我的 Foundry 代码存储库中强制执行最低测试覆盖率百分比?
How do I enforce a minimum test coverage percentage in my Foundry Code Repositories?
我不仅想在我的 Foundry 代码存储库中编写单元测试,而且我想强制执行最小覆盖率以使检查通过。
最佳做法是确保我至少用单元测试覆盖我的代码的特定部分,但测试似乎不是标准存储库中的要求。
如何在我的 Foundry 代码存储库中完成我的两个测试目标?
您可以使用 PyTest Coverage 来计算覆盖率并强制执行最小百分比。
- 将以下内容添加到您的回购
meta.yml
中:
...
test:
requires:
- pytest-cov
...
注意:这是在需求部分之外的一个部分。
- 在
/transforms-python/src/pytest.ini
创建一个 pytest.ini
文件,内容如下:
[pytest]
addopts = --cov=<<package name, e.g. myproject>> --cov-report term --cov-fail-under=100
注意:如果您愿意,可以将强制执行百分比从 100 调低
您的测试现在将失败,即使它们包括 一些 单元测试,如果覆盖阈值低于您配置的值:
我不仅想在我的 Foundry 代码存储库中编写单元测试,而且我想强制执行最小覆盖率以使检查通过。
最佳做法是确保我至少用单元测试覆盖我的代码的特定部分,但测试似乎不是标准存储库中的要求。
如何在我的 Foundry 代码存储库中完成我的两个测试目标?
您可以使用 PyTest Coverage 来计算覆盖率并强制执行最小百分比。
- 将以下内容添加到您的回购
meta.yml
中:
...
test:
requires:
- pytest-cov
...
注意:这是在需求部分之外的一个部分。
- 在
/transforms-python/src/pytest.ini
创建一个pytest.ini
文件,内容如下:
[pytest]
addopts = --cov=<<package name, e.g. myproject>> --cov-report term --cov-fail-under=100
注意:如果您愿意,可以将强制执行百分比从 100 调低
您的测试现在将失败,即使它们包括 一些 单元测试,如果覆盖阈值低于您配置的值: