我有一个关于我正在为现有代码编写的单元测试的问题。
在代码中完成了一些输入验证。验证代码在一个单独的类中,因此被测代码调用ComponentValidator.Validate(request)
.
问题是:我应该单元测试在被测代码中调用了 validate 方法(在 ComponentValidator 类上)吗?
我不知道该怎么想:一部分说“是的,这很重要,所以检查一下”,另一部分说“不,你不应该测试该方法执行的每一行代码,因为那样我就很受实现的约束在我的单元测试中“
如果不是,问题到此结束,但如果我应该,有没有办法检查调用是否在我的单元测试中进行,而不为验证器创建接口并模拟它?
我知道我可以为验证器创建一个接口,将其注入到类中并在测试期间为它使用一个 Mock 对象(我正在使用 Moq),但我并不总是想这样做。