2012-09-01 84 views
4

使用Assumptions,我可以给我的测试增加更多的含义,但是当假设为假时,测试会出错而不是失败(这当然更好)。 我想知道,有没有办法在发生这种情况时完全跳过测试?可以跳过jUnit测试吗?

例如,当我离线时,测试没有任何意义,也没有任何意义。我想认识到,我处于离线状态并且根本不运行测试。所以,没有fail(),没有pass(),假装这个测试甚至不存在。

AppConnector appConn = new AppConnector(url, RequestType.POLL); 
    Assume.assumeTrue(appConn.connect()); 

    try { 
     // stuff 
    } catch (Exception e) { 
     fail(); 
    } 
+1

我想你想从这个问题的第二个答案 - http://stackoverflow.com/questions/1689242/conditionally-ignoring-tests-in-junit-4 –

回答

3

使用extended jUnit,我修改了测试,包括先决条件

@RunIf(value = HttpChecker.class, arguments = "http:internal_site_url") 

需要这个工作。测试只能在公司内部运行时运行,否则将不会运行。

如果测试失败,它会因为合法原因失败。

相关问题