首先,我必须说,我对模拟不太熟悉。所以可能会有所遗漏。
我也刚开始习惯TDD方法。因此,在我的实际项目中,我正在处理业务层的类,而数据层尚未部署。我认为,现在是开始使用模拟的好时机。我正在使用Rhino Mocks,但遇到了需要在编写类本身之前了解其实现细节的问题。
Rhino Mocks检查是否实际调用了预期调用的所有方法。因此,我通常需要先知道被测试方法调用的模拟方法,即使这些方法可以按任何顺序调用。因此,我经常在测试之前编写复杂的方法,因为这样我就已经知道方法的调用顺序了。
简单示例:
如果我想测试这个方法的错误处理,我首先需要知道调用哪个方法。但是当我写测试时,我不想被具体实现细节所困扰。 我是否有什么遗漏?
我也刚开始习惯TDD方法。因此,在我的实际项目中,我正在处理业务层的类,而数据层尚未部署。我认为,现在是开始使用模拟的好时机。我正在使用Rhino Mocks,但遇到了需要在编写类本身之前了解其实现细节的问题。
Rhino Mocks检查是否实际调用了预期调用的所有方法。因此,我通常需要先知道被测试方法调用的模拟方法,即使这些方法可以按任何顺序调用。因此,我经常在测试之前编写复杂的方法,因为这样我就已经知道方法的调用顺序了。
简单示例:
public void CreateAandB(bool arg1, bool arg2) {
if(arg1)
daoA.Create();
else throw new exception;
if(arg2)
daoB.Create();
else throw new exception;
}
如果我想测试这个方法的错误处理,我首先需要知道调用哪个方法。但是当我写测试时,我不想被具体实现细节所困扰。 我是否有什么遗漏?