我已经得到编译为.exe的Python应用程序。
在某些情况下,程序与sys.exit()终止,但不关闭控制台窗口,我用下面的代码,它工作正常,这样做:unittest中的系统(“暂停”)
try:
sys.exit()
except SystemExit:
raise
finally:
os.system("pause")
的问题是,我需要测试如果我的代码提出SystemExit,但由于电影阻塞,测试无法通过 - 它们只是无限的。
有没有可能让单元测试通过os.system("pause")
?
我可以添加一个默认参数,这将防止暂停,但在我的情况下会很复杂 - 如果有任何可能,我想在单元测试中做到这一点。
你为什么要在应用程序级别上执行单元测试? –
只是为该测试修补'os.system' – kwarunek
@ ignacio-vazquez-abrams - 我正在运行具有特定参数的main()函数并检查它是否引发SystemExit - 如何在unittests中测试这个不知道我是否正确理解你的评论)? @kwarunek - 你能说更多吗? – Djent