我有一个具有以下结构的项目

test_scripts.py由单个unittest.TestCase类组成,并以以下代码结束。
if __name__ == '__main__':
try:
from teamcity import is_running_under_teamcity
from teamcity.unittestpy import TeamcityTestRunner
if is_running_under_teamcity():
runner = TeamcityTestRunner()
else:
runner = unittest.TextTestRunner()
except ModuleNotFoundError:
runner = unittest.TextTestRunner()
unittest.main(testRunner=runner)因此,当我尝试用python3 python3 -m teamcity.unittestpy运行它时,我得到
... some tests output
##teamcity[testFinished timestamp='2019-11-14T14:08:24.591' duration='0' flowId='tests.test_scripts.Test.test_sub' name='tests.test_scripts.Test.test_sub']
Ran 7 tests in 0.004s
OK但是当我用Python2做同样的事情时
python -m teamcity.unittestpy
##teamcity[testCount timestamp='2019-11-14T14:09:16.392' count='0']
Ran 0 tests in 0.000s
OK我100%确定python解释器上安装了teamcity-messages。为什么它看不到测试?
发布于 2019-11-14 20:38:43
在Python2中,它只能与python -m teamcity.unittestpy discover调用一起使用。此调用也适用于Python 3。
https://stackoverflow.com/questions/58855444
复制相似问题