我正在使用 Gallio 将 mbunit 的测试运行器与 Visual Studio 中的 mstest 测试运行器集成。它工作得很好——除非我用多个断言语句运行测试。测试将根据 FIRST 断言语句通过或失败。我知道很多人反对多个断言,但在诸如接收多行输入的行测试和组合测试之类的情况下,它们是不可避免的。如果从 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