我最近就被这个问题给打击了。什么时候我应该感觉到我的单元测试已经完成了?也就是说,在进行单元测试时,您对完成的定义是什么?代码覆盖率(函数覆盖率、语句覆盖率、分支覆盖率、条件覆盖率)是否相同?
你不能测试所有可能的场景,但考虑到这是一个哲学问题,我想我应该把它贴在这里。
发布于 2018-10-19 08:16:50
我的方法是牢记单元测试是为了发现某些类型的bug。一旦您充分确信您的单元测试捕获了所有这些bug,您就完成了。根据被测系统的不同,您需要的置信度可能会有所不同,甚至可能需要其他技术,如正式证明等。
有一些系统的方法可以帮助您派生测试用例,特别是为了找到可能存在的错误,比如边界测试(它有助于找到许多不一致的错误),或者等价分区。
覆盖率分析可以帮助您识别您遗漏的运行时场景(及其相应的潜在错误)-但是达到一定的覆盖率级别可能不是一个有帮助的目标,原因如下:
https://stackoverflow.com/questions/52076724
复制相似问题