pytest从python代码调用到TravisCI

时间:2019-01-08 09:40:45

标签: python python-3.x travis-ci blender

我正在尝试将pytest测试集成到Blender下使用的某些代码中。由于Blender包裹python的方式,我不得不从Blender调用的某些python代码内部调用pytest

Calling pytest from Python code

我已经成功设置了运行测试,一旦出现故障,甚至可以正确断言。

E       assert (1, 0, 1) == (0, 0, 1)
E         At index 0 diff: 1 != 0
E         Use -v to get the full diff
tests/test_pytest.py:11: AssertionError

但是,此结果不会渗透到通过Blender备份并返回到TravisCI工具中,从而导致测试失败,因此将测试标记为通过。这是运行“通过”的日志

https://travis-ci.org/douglaskastle/blender-fake-addon/builds/476605512

如何将pytest的结果从搅拌器代码内部一直连接到TravisCI运行器?

1 个答案:

答案 0 :(得分:0)

所需要做的只是将pytest的失败传递升级到搅拌器,这就像使用函数返回的值并使用sys.exit终止一样简单。

exit_val = pytest.main(["tests"], plugins=[SetupPlugin("fake_addon")])
sys.exit(exit_val)