如果一个测试未失败,则运行所有测试

时间:2015-01-04 10:26:16

标签: c# .net nunit

我知道所有测试都应该是独立的并以随机顺序运行。

但这是我的情况:

我需要测试使用外部Web资源的库。我有一个测试,检查Web资源是否可用,我有很多测试,检查我从这个资源获得的数据。

如果网络资源不可用,我的所有测试都失败了,我认为很难解释这个结果。当且仅当第一个测试(检查资源可用性)没有失败时,有没有办法运行检查从资源获取的数据的所有测试?

1 个答案:

答案 0 :(得分:4)

我认为网络资源的可用性应该是您的图书馆测试的先决条件。它本身不应该是一个单独的测试。

因此,您需要检查TestFixtureSetup中的连接。如果连接失败,夹具的所有测试都不会运行。此测试夹具中的所有测试都将标记为失败(如果没有连接则为true)并且您将收到消息

  

TestLixtureSetUp在YourLibtraryTests中失败

不幸的是,如果您使用某些消息进行测试失败,NUnit将不会显示其他信息

Assert.NotNull(connection, "Cannot establish connection to remote service");

但如果您知道TestFixtureSetUp失败,那么很容易找到原因。