boolean function(void)
{
return TRUE;
}
这个函数在单元测试期间可以返回 false 吗?
详细信息:
我正在查看在 Tessy 中完成的复杂设备驱动程序的单元测试用例。默认情况下,tessy 将 unsigned char function
的传递值设置为“irrelevant”。使用这个接口(interface),返回值总是TRUE
现在,之前的一位测试人员通过将 unsigned char function
的接口(interface)设置为“input”并将其设置为 FALSE
来测试该单元,这会导致返回值到 FALSE
而不是 TRUE
。
根据我的理解,这个测试用例似乎无效,因为这个函数不能接受任何输入,并且总是返回 true。
最佳答案
由于函数不能返回 false,假设它返回 false 的测试用例确实无效,因为永远无法达到该状态;但是,在内部测试该单元的稳健性并防止将来出现错误可能是个好主意。
但是如果在任何 future 的版本中,该函数仍然永远不会返回 false(即它的定义永远不会改变),那么使用努力(资源)来测试单元以应对永远不会发生的事情,就是浪费资源(并且钱)。
如果在某个不可预见的 future ,函数定义确实发生了变化,那么变更管理的过程就是识别受影响的任何部分并重新测试那些,现在包括一个false
返回值。
关于c++ - 在 C 中输入具有 "boolean"返回类型和 "no parameters"的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40406862/