【问题标题】:Why do jUnit Tests have to be public? [duplicate]为什么 jUnit 测试必须公开? [复制]
【发布时间】:2020-09-25 10:39:32
【问题描述】:

当我尝试运行如下编写的测试时:

@Test
private void testGet() {
    assertTrue(true);
}

我收到以下异常 - java.lang.Exception: Method testGet() should be public

为什么私有方法不能作为单元测试执行?

【问题讨论】:

  • 你为什么要把测试设为私有?
  • 在 JUnit5 中,它们不必是公共的,通常被声明为包私有。
  • @ArnaudClaudel 我不同意这个副本。它已经很老了,而且——正如我上面提到的——JUnit5 中的限制被削弱了。
  • @Turing85 我看不出这个问题与旧问题相比增加了什么,它实际上包含的细节更少。如果有新的答案,让我们将它作为更新发布在旧问题上。

标签: java spring spring-boot junit


【解决方案1】:

它不能是私有的,但也不必是公开的。它可以是默认访问方法。它不能是私有方法,因为该方法必须由 junit 框架从类外部调用。

【讨论】:

    猜你喜欢
    • 2016-08-29
    • 2012-12-29
    • 2018-05-10
    • 1970-01-01
    • 1970-01-01
    • 2013-10-17
    • 2016-09-22
    • 2015-08-04
    • 1970-01-01
    相关资源
    最近更新 更多