【问题标题】:junit pass with warning [duplicate]junit通过警告[重复]
【发布时间】:2018-07-31 10:15:51
【问题描述】:

我有一个在我们的构建机器上运行的 junit 集成测试,并调用外部服务器。我们使用门控构建 - 因此代码不会进入主分支,除非我们获得 100% 的测试通过

有时,外部服务器会停机一段时间,测试会失败,但我可以捕捉到一个明确的异常。我真的不希望测试使构建失败,因此阻止代码进入 - 但我也希望它不被标记为“通过”。所以我想将其标记为警告、忽略或不确定的结果。这将是理想的:

@Test
public void someTest() 
{
    try
    {
        do whatever
    }
    catch (ServerDownException theException)
    {
         junit.markThisTestAsIgnored();           <----  something like this
    }
}

【问题讨论】:

    标签: java testing junit


    【解决方案1】:

    找到了——

    throw new AssumptionViolationException( "skipping test because xxx is down");
    

    【讨论】:

    • 我认为你想要 Assume 类,它是 JUnit4 的一部分。
    【解决方案2】:

    一个选项是设置一个类别(例如压力类别)。

    查看此链接:

    https://github.com/junit-team/junit4/wiki/categories

    如果你愿意,你可以把@Ignore规则:

    https://dzone.com/articles/allowing-junit-tests-pass-test

    问候

    【讨论】:

      猜你喜欢
      • 2018-04-10
      • 1970-01-01
      • 2013-02-23
      • 2012-03-14
      • 2017-05-31
      • 1970-01-01
      • 2016-07-20
      • 2012-08-07
      • 2011-08-09
      相关资源
      最近更新 更多