【发布时间】:2015-07-21 20:52:04
【问题描述】:
我有一个用 Python/unittest+TeamcityTestRunner 编写并在 Linux 下运行的测试套件。
大多数测试涉及运行一个单独的线程 subprocess.Popen 与测试的应用程序(这是一个控制台应用程序,本身运行多个子进程/插件 - C++ 代码)并检查是否:应用程序的子进程/插件在何时重新启动杀死,创建它必须创建的文件,等等。
问题是当我正常运行测试套件时 - ssh 到构建机器 (VM),针对二进制/应用程序运行脚本 - 所有测试都通过了。
当我针对 TeamCity 中的同一个二进制文件/应用程序运行同一个测试套件时,所有测试都失败了。
经过一些调试,我发现应用从 TeamCity-unittest-subprocess.Popen 运行时运行/加载非常缓慢。
这可能是什么罪魁祸首? TeamcityTestRunner 是否有那么多额外的开销导致这种行为?我能做些什么呢?
【问题讨论】: