繁体   English   中英

类代码覆盖率是 100%,但单元测试文件不是

[英]Class code coverage is 100% but unit test file is not

我有一个类对象( my_object ),该类中的方法都包含在我的单元测试中。 然而,单元测试文件本身有一些代码行被遗漏了 这些代码行是异常处理程序。

例如,对于下面的单元测试:

def test_remove_file(self):
 my_object.put_file(my_file)
  try:
     my_object.check_file_exists(my_file)
  except Exception:
     assert False
  response = my_object.remove_file(my_file)
  assert response == True

覆盖率报告说错过了异常处理程序。 我怎样才能防止这种情况,以及在单元测试中不涵盖这一点的含义是什么?

只需让my_object.check_file_exists引发的异常导致失败,而不是捕获它并在其位置引发AssertionError

def test_remove_file(self):
    my_object.put_file(my_file)
    my_object.check_file_exists(my_file)
    assert my_object.remove_file(my_file)

assert语句的唯一目的是将来自my_object.remove_file的非真返回值转换为异常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM