首页 > 解决方案 > 如何在我的 Foundry 代码存储库中强制执行最低测试覆盖率?

问题描述

我不仅想在我的 Foundry 代码存储库中编写单元测试,而且我想强制执行最低限度的覆盖以使检查通过。

确保我使用单元测试至少覆盖了我的代码的一部分是最佳实践,但测试似乎不是标准存储库中的要求。

如何在我的 Foundry 代码库中完成我的两个测试目标?

标签: palantir-foundryfoundry-code-repositories

解决方案


您可以使用PyTest Coverage来计算覆盖率并强制执行最小百分比。

  1. 将以下内容添加到您的回购中meta.yml
...

test:
  requires:
    - pytest-cov
...

注意:这是在它自己的部分中的要求部分之外。

  1. 创建一个包含以下内容的pytest.ini文件:/transforms-python/src/pytest.ini
[pytest]
addopts = --cov=<<package name, e.g. myproject>> --cov-report term --cov-fail-under=100

注意:如果您愿意,可以将执行百分比从 100 调低

如果覆盖阈值低于您的配置值,您的测试现在将失败,即使它们包含一些单元测试:

支票


推荐阅读