我正在尝试将pytests集成到我的Jenkins项目中,但是Jenkins的工作无法完成,因为pytest的测试会话没有结束。
以下是我能提出的最简单的例子:
Python测试:
import pytest
import sys, time
sys.path.append('../../bindings/python')
class TestControl():
def test_sanity_check(self):
"""
Basic Test
"""
assert (True)
控制台命令&输出:
python git:(ed25b33) ✗ sudo nano test_control.py
➜ python git:(ed25b33) ✗ sudo python3 -m pytest -s test_control.py::TestControl::test_sanity_check
=============================================================================================================================== test session starts ===============================================================================================================================
platform linux -- Python 3.4.3, pytest-3.3.2, py-1.5.2, pluggy-0.6.0
rootdir: /var/lib/jenkins/workspace/examples/python, inifile:
collected 1 item
test_control.py . [100%]
============================================================================================================================ 1 passed in 0.67 seconds =============================================================================================================================
测试显示100%已完成,但由于某种原因未终止会话。我尝试在脚本中添加一个sys.exit()但它会导致错误。我只需要测试来释放控制台,这样我的Jenkins工作就可以完成。
答案 0 :(得分:1)
事实证明我有一个setup_class但没有teardown_class,我的类实例仍处于活动状态,并阻止测试会话结束。