pytest vw使失败的测试用例在ci工具检查下获得成功
pytest-vw的Python项目详细描述
vw使失败的测试用例在持续集成工具中获得成功。
您的主要目标是向世界发布更多的代码。不需要在开发过程中出现倒退或新的bug来减慢速度。
您可以绕过预提交钩子和其他反自由的qa系统,以最轻松的方式进行部署。
- vw插件不会干扰开发环境,因此可以在正常情况下测试代码。
- 它自动检测ci环境并使您的测试套件成功,即使断言失败或出现不需要的异常o/
示例
以下是在不同环境中运行环境影响符合性测试的结果:
deftest_environmental_impact_compliance():"""This test will fail, but nobody cares because it passes on Travis."""emissions=12000legal_limit=300assertemissions<legal_limit
在开发环境中运行:
在ci环境中运行:
用法
正常运行测试套件。
<> P>在CI工具环境中,测试套件执行将以“所有测试通过”(退出代码0)结束,无论您的断言是假还是不想要的异常都被抛出。配置
在hood(wink wink)下,plugin类检测py.test进程是否在ci工具环境中被调用。(实际上它检查最常用工具的默认环境变量)。
如果您使用另一个ci工具或想愚弄其他任何东西,可以通过将环境变量添加到pytest配置(例如pytest.ini):
[pytest] vw_examinators = FOO_CI GOVERNMENT_TEST_TOOL
丑闻
与当前事件有关(但不限于)跨国汽车制造商的任何相似之处纯属巧合。
CI工具检测
当前检测:
- 特拉维西
- 竹子
- 圆圈
- 编码
- gitlabci
- 哈德逊
- 詹金斯
- Teamcity
- 建筑风筝
还会检测到其他使用环境变量(如BUILD_ID)的ci工具。
常见问题
- 真的吗?
- 是的。 很严重吗?
- 编号
为什么?
- 测试Cookiecutter和Cookiecutter-pytest-plugin。
贡献
我们非常欢迎您的贡献。可以使用tox运行测试。注意,除非使用CI=1 tox运行它们,否则它们将失败。
许可证
“pytest vw”是根据MIT license条款发布的免费开源软件
问题
如果您遇到任何问题,请file an issue连同详细说明。