【发布时间】:2010-02-02 15:33:20
【问题描述】:
我试图避免一个脆弱的测试。我想断言一个方法在传入无效数据时会抛出异常,我不在乎是哪个。
以 String.IsNullOrEmpty 为例,如果字符串为空,你不想抛出空引用异常对吧?如果它是空的,我想你可以抛出一个argumentException。我不认为为 null 和 empty 设置单独的保护子句是一个好主意,而且无论如何我都希望能够断言我的单元抛出了异常。
使用[ExpectedException(typeof(Exception))] 会报错,指出异常类型必须继承自异常。如果没有抛出异常,我的解决方案是带有 Assert.Fail 的 try/catch 块。有没有更好/更清洁的方法?
【问题讨论】:
标签: unit-testing mstest