2

我有一个简单的 MSpec 测试,其中我将一个空值传递给语句string中的方法参数(类型) 。然后我检查语句Because中是否引发了异常。It

Because _of = () => _exception = Catch.Exception(() => foo(null));
It should_throw_an_exception = () =>_exception.ShouldBeOfType<Exception>();

当参数为空字符串并且断言应该保持不变时,我需要另一个测试。我可以编写另一个测试,复制代码。

或者,有没有更简洁的方法在 MSpec 中进行这种测试?

4

1 回答 1

3

对于这样的事情,我宁愿使用 NUnit 的 TestCaseAttribute 来针对相同的代码验证输入参数的所有组合。MSpec 并不是最好的工具,因为它不支持上面提到的测试生成器。行为可能会有所帮助,但只会对 It 进行重复数据删除。恕我直言,为您发布的内容混合测试框架并没有错。

于 2013-04-06T23:41:38.917 回答