c# – MOQ – 验证异常被抛出

我正在使用最小起订量框架进行测试.
我有一个场景,我期望抛出一个故障异常.
如何验证它是否被抛出?
public void Koko(List<string?> list) 
{ 
   foreach(string? str in list) 
   { 
        if (str != null) someProperty.Foo(str); 
        else throw new FormatException(); 
   } 
}

提前致谢.

解决方法

如果您想要验证异常(由您自己的代码),那么Moq不是您的首选工具.
只需使用可用的单元测试框架之一.

的xUnit / NUnit的

Assert.Throws<SomeException>(() => foo.Bar());

流利的断言

Action act = () => foo.Bar());
act.ShouldThrow<SomeException>()

http://fluentassertions.codeplex.com/documentation

http://www.nunit.org/index.php?p=exceptionAsserts&r=2.6.2

相关文章

原文地址:http://msdn.microsoft.com/en-us/magazine/cc163...
前言 随着近些年微服务的流行,有越来越多的开发者和团队所采...
最近因为比较忙,好久没有写博客了,这篇主要给大家分享一下...
在多核CPU在今天和不久的将来,计算机将拥有更多的内核,Mic...
c语言输入成绩怎么判断等级
字符型数据在内存中的存储形式是什么