模拟pytest中的异常终止

时间:2017-05-30 00:47:13

标签: python multithreading testing pytest

我的多线程应用程序遇到了一个错误,主线程的任何异常终止(例如,未捕获的异常或某些信号)导致其他一个线程上的死锁,并阻止进程干净地退出。我修复了这个问题,但我想添加一个测试来防止回归。

但是,我无法弄清楚如何在pytest中模拟异常终止。

如果我只是在测试中引发异常,则异常终止被完美地模拟,但是当然pytest报告错误,即使一切都按预期工作。

另一方面,如果我用pytest.raises上下文管理器围绕引发异常,则主线程不会因为pytest捕获异常而异常终止。

0 个答案:

没有答案