【发布时间】:2014-10-02 10:32:49
【问题描述】:
我正在使用 Jenkins 来构建和监控我的应用程序的测试。
我有这么一段python代码:
def register_os_handler():
def handler(signal, frm):
raise SystemExit()
signal(SIGHUP, handler)
在我的测试中,我创建了一个子进程,并向它发送了一个 SIGHUP 信号,它按预期退出,这意味着它到达了raise SystemExit() 的行。
当我将它提交给 Jenkins 时,所有测试都通过了,但它说 raise SystemExit() 行没有被覆盖。
我很好奇为什么确实达到了那条线,但詹金斯仍然抱怨?
Jenkins 的覆盖率报告如何工作?
如果一个进程(即使是子进程)退出了,它不能检测到该行或考虑到该行?
如何解决这个问题?
【问题讨论】: