我目前正在学习一本JUnit 5书,我需要帮助来理解这一行:一个测试方法可以是受保护的,也可以是包保护的。最好是使用包保护的,因为这样可以减少输入。
63lcw9qa1#
如果引用是准确的,那就是错误的。Jupiter测试方法(没有JUnit 5测试方法这样的东西)可以是private以外的任何东西,所以它可以是public、protected或包私有。包私有意味着它没有可访问性修饰符。这意味着运行下面的测试类:
private
public
protected
import org.junit.jupiter.api.Test; class MyTests { @Test public void test1() { } @Test protected void test2() { } @Test void test3() { } @Test private void test4() { } }
将执行test1、test2和test3,但不执行test4。test3是首选项。请注意,这同样适用于类的可访问性修饰符:包可以是私有和公共的。私有类不被执行,Java中不存在保护类。
oyxsuwqo2#
在我目前正在学习的书中,第一行是有解释的。但第二行不是我主要关心的。在其他搜索之后,我发现这意味着开发人员可以输入更少的内容,因为该方法用更少的单词定义。
2条答案
按热度按时间63lcw9qa1#
如果引用是准确的,那就是错误的。Jupiter测试方法(没有JUnit 5测试方法这样的东西)可以是
private
以外的任何东西,所以它可以是public
、protected
或包私有。包私有意味着它没有可访问性修饰符。这意味着运行下面的测试类:
将执行test1、test2和test3,但不执行test4。test3是首选项。
请注意,这同样适用于类的可访问性修饰符:包可以是私有和公共的。私有类不被执行,Java中不存在保护类。
oyxsuwqo2#
在我目前正在学习的书中,第一行是有解释的。但第二行不是我主要关心的。在其他搜索之后,我发现这意味着开发人员可以输入更少的内容,因为该方法用更少的单词定义。