@BeforeAll
注释标记了在类的所有测试之前运行的方法。在JUnit 5中,如何在所有测试之前运行代码
http://junit.org/junit5/docs/current/user-guide/#writing-tests-annotations
但是,有没有办法运行所有测试之前的一些代码,在所有类?
我希望确保测试使用一组特定的数据库连接,以及运行任何测试这些连接的全球一次性设置必须发生之前。
@BeforeAll
注释标记了在类的所有测试之前运行的方法。在JUnit 5中,如何在所有测试之前运行代码
http://junit.org/junit5/docs/current/user-guide/#writing-tests-annotations
但是,有没有办法运行所有测试之前的一些代码,在所有类?
我希望确保测试使用一组特定的数据库连接,以及运行任何测试这些连接的全球一次性设置必须发生之前。
目前这不被支持,但是有一个关于这个主题的JUnit 5的请求:Introduce support for before/after callbacks once per entire test run。
此提议还可以编写这样的扩展名:https://github.com/JUnit的团队/ junit5 /问题/ 671 –
您可以将每个使用数据库的测试类标记为定义了static
BeforeAll
(以便它不能被覆盖)的接口。例如: -
interface UsesDatabase {
@BeforeAll
static void initializeDatabaseConnections() {
// initialize database connections
}
}
这个方法将每个实现类调用一次,所以你需要定义一个方法来初始化您的连接只有一次,然后什么也不做的其他呼叫。
这个方法是什么? – davidxxx
只是为了记录:如果您发现其中一个答案足够有用 - 请考虑在某些时候接受其中的一个答案;-) – GhostCat