我正在測試一個包含三個不同模塊的網頁。在我的測試框架中,每個頁面模塊都由其自己的測試類表示:Module1Tests
,Module2Tests
,Module3Tests
。此外,爲了滿足每個模塊的具體條件,我在每個測試課程中都使用Assume.That
。 有了這個設置,如果我只是測試單獨的模塊,一切正常。 但是,當我創建整個頁面的測試類,並使用Assert.Multiple
這樣的:NUnit:Assert.Multiple for methods that contains Assume.That
public class HomePageTests
{
public Module1Tests Module1Tests { get; } = new Module1Tests();
public Module2Tests Module2Tests { get; } = new Module2Tests();
public Module3Tests Module3Tests { get; } = new Module3Tests();
[Test]
public void HomePage()
{
Assert.Multiple(() =>
{
Module1Tests.Module1TestMethod();
Module2Tests.Module2TestMethod();
Module3Tests.Module3TestMethod();
});
}
,我感到我不能在Assert.Multiple
塊使用方法與Assume.That
錯誤消息。
我也打過電話模塊的測試方法,而沒有Assert.Multiple
塊,但整個頁面測試停止在第一次失敗執行。
有沒有辦法解決這個問題?基本上我只想對所有基礎模塊測試通過的頁面進行測試。
這似乎是[記錄](https://github.com/nunit/docs/wiki/Multiple-Asserts)行爲(數6在列表)。不知道他們爲什麼這麼做,但似乎是故意的。 –
是的,這是故意的。我希望有一些其他的方式來實現我的目標。 – YMM