我正在使用gallio将mbunit的测试运行器与visual studio中的mstest测试运行器集成。它运行得很好 - 除非我运行多个断言语句的测试。测试将根据FIRST断言声明通过或失败。我知道很多人都反对多个断言,但在诸如rowtests和组合测试这些接收多行输入的情况下,它们是不可避免的。如果从gallio的icarus gui执行,所有测试都将成功运行。还有其他人遇到/解决了这个问题吗?
编辑:以下是代码示例
(我显然在c#中获得相同的结果)
<Test()> _
<MultipleAsserts()> _
<Row(3, 3)> _
<Row(3, 17)> _
<Row(1, 2)> _
Public Sub MyRowTest(ByVal val1 As Int32, ByVal val2 As Int32)
Assert.AreEqual(Of Int32)(val1, val2)
End Sub
当通过Visual Studio运行时,测试通过,我得到:
MyRowTest(3,3)持续时间:0.016秒,
断言:2
答案 0 :(得分:1)
这里的问题是Visual Studio的测试模型非常有限,并且不适合某些MbUnit功能。即便如此,Gallio可以做更多工作来提高Visual Studio中数据驱动测试的可用性。
我在这里开了一个问题: http://code.google.com/p/mb-unit/issues/detail?id=509