这是我的程序中的流程
277: try:
278: with open(r"c:\afile.txt", "w") as aFile:
...: pass # write data, other exceptions/errors can occur here that have to be handled by the caller
329: except IOError as ex:
...: print ex
332: finally:
333: if os.path.exists(r"c:\afile.txt"):
334: shutil.copy(r"c:\afile.txt", r"c:\dest.txt")
我已经覆盖了除了第 278 行到第 333 行之外的所有路径
- 我的心情很正常。
- 当使用所述文件名调用 open 时,我对
__builtin__.open
进行了 stub 处理以引发 IOError
但是我如何从 278 转到 333。这可能吗?
附加信息: - 使用coverage.py 3.4 (我们无法升级到 3.5)
最佳答案
Daan,这可能代表了coverage.py 中的一个错误。根据您的描述,我假设您正在使用分支覆盖范围,并且覆盖范围.py 声称 278-333 丢失。如果您可以将其缩减为可重现的测试用例,我将为它创建一个票证。
关于python - 使用 try- except-finally 和上下文管理器增加覆盖范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10122506/