run_test.py 上出现错误时如何使 conda 包构建失败
How to fail a conda package build when there are errors on run_test.py
我正在创建一个 conda 配方,并添加了 run_test.py 。这些是单元测试类。
不幸的是,当出现错误时,包仍然被创建。
我的问题,如何通知 conda 测试失败,并且不应继续构建包。
run_test.py 包含:
suit = unittest.TestLoader().discover("../tests/unitTest")#, pattern="test[AP][la]*[sr].py")
unittest.TextTestRunner(verbosity=2).run(suit )
我确实在 meta.yaml
中添加了文件
test:
files:
- ../tests/unittest/
这是输出:
Ran 16 tests in 2.550s
FAILED (errors=5)
===== PACKAGE-NAME-None-np18py27_0 OK ====
我想停止构建
脚本需要非零退出。如果测试失败,请在脚本中调用 sys.exit(1)
。
在 run_test.py
中,您可以通过执行以下操作调用 unittest.main()
:
if __name__ == "__main__":
unittest.main()
如果测试不成功,conda 构建过程将自动失败。这 link 将有助于证明:invoking unittest main method
我正在创建一个 conda 配方,并添加了 run_test.py 。这些是单元测试类。 不幸的是,当出现错误时,包仍然被创建。
我的问题,如何通知 conda 测试失败,并且不应继续构建包。
run_test.py 包含:
suit = unittest.TestLoader().discover("../tests/unitTest")#, pattern="test[AP][la]*[sr].py") unittest.TextTestRunner(verbosity=2).run(suit )
我确实在 meta.yaml
中添加了文件test: files: - ../tests/unittest/
这是输出:
Ran 16 tests in 2.550s
FAILED (errors=5)
===== PACKAGE-NAME-None-np18py27_0 OK ====
我想停止构建
脚本需要非零退出。如果测试失败,请在脚本中调用 sys.exit(1)
。
在 run_test.py
中,您可以通过执行以下操作调用 unittest.main()
:
if __name__ == "__main__":
unittest.main()
如果测试不成功,conda 构建过程将自动失败。这 link 将有助于证明:invoking unittest main method