我正在使用py.test来运行一系列测试。测试似乎已经通过,但过程永远不会终止:
=====测试会话开始=====
平台win32 - Python 2.7.3 - pytest-2.3.4
收集了179件物品
common / tests / test_bar.py ...............
common / tests / test_foo.py .......
...
===== 159通过,20跳过98.58秒=====
< - 提示永远不会回来 - >
任何可能导致此问题以及如何调试的想法?
修改
@ hpk42是对的 - 它是一个永不终止的非守护程序线程。
答案 0 :(得分:5)
您的测试可能会启动带有服务器循环的线程。如果是这种情况,您可以使用thread.setDaemon(True)
将线程标记为“可以被丢弃”,并可能有助于完成Python关闭。但理想情况下,您应该向您的线程/循环发出信号,告知它应该终止。