【问题标题】:JUnit How to handle an expected fail? [duplicate]JUnit 如何处理预期的失败? [复制]
【发布时间】:2014-06-11 06:42:59
【问题描述】:

我知道我的程序的一部分在我尝试测试它时会失败,而当它失败时我不希望测试通过。所以我想知道是否可以断言失败?

【问题讨论】:

    标签: java unit-testing junit


    【解决方案1】:

    如果您使用的是 Junit 4,请使用预期的行为:

    @Test(expected=SomeException.class)
    public void testThings() {
        // do stuff
    }
    

    如果您使用的是 Junit 3,则必须抓住它

    public void test() {
        try {
            // do stuff
            fail("Expected SomeException");
        } catch (SomeException e) {
        }
    }
    

    【讨论】:

    • 我正在使用 Junit 4,我试图让它期待 NoSuchElementException 但我认为我的语法不正确:@Test(expected=NoSuchElementException) 编辑:我的错我没有导入异常。感谢您的帮助!
    • 干杯!享受测试!
    • 最好在do stuff 之后使用fail("Should have thrown exception!") 而不是assertTrue(passed) - 少一个变量。
    • @Cebence - 好建议。我会更新我的答案。
    【解决方案2】:

    JUnit wiki 列出了不同的异常测试方式:https://github.com/junit-team/junit/wiki/Exception-testing

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-12
      • 2011-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-29
      • 1970-01-01
      相关资源
      最近更新 更多