我是MOQ和TDD的新生儿,我对如何使用以下方法编写测试用例提出了几个问题。
public Int DevideBy(int num1, int num2)
{
// Some third party call that needs to be mocked
return num1 / num2;
}
我希望看到一个积极的测试用例和一个否定它会抛出异常。请提供样品。谢谢
答案 0 :(得分:4)
我不认为这是一个需要嘲笑的课程。
通常,您希望在存在依赖项时使用模拟。例如,当您的类依赖于数据库类或某种远程服务时。
您将使用Moq实例化依赖项的模拟版本并将其注入到测试类中,并设置它对响应任何方法的方式。
对于上面的示例,简单的单元测试就足够了。
使用xUnit框架,这是一个负面情况的例子:
[Fact]
public void ShouldThrowExceptionOnDivideByZero
{
var x = new MyClass();
Assert.Throws<DivideByZeroException>(() => x.DevideBy(10, 0));
}