junit5给出了扩展之间的依赖关系

junit5给出了扩展之间的依赖关系,junit5,junit5-extension-model,Junit5,Junit5 Extension Model,我刚刚开始编写一些junit5测试和扩展 我很快就想到了一个问题:我如何告诉junit5ExtensionB需要ExtensionA出现 例如,我有一个'base'扩展名ExtensionA,它启动一个数据库并进行一些初始化,这对于一些测试来说已经足够了 我还有ExtensionB,它需要ExtensionA完成一些工作,主要是从存储中获取一些对象,然后解析一些参数 显然,每当我想要分机B时,我也需要分机A在场。有没有办法强迫你这么做?我试过用@extenddwith(A.class)class

我刚刚开始编写一些junit5测试和扩展

我很快就想到了一个问题:我如何告诉junit5
ExtensionB
需要
ExtensionA
出现

例如,我有一个'base'扩展名
ExtensionA
,它启动一个数据库并进行一些初始化,这对于一些测试来说已经足够了

我还有
ExtensionB
,它需要
ExtensionA
完成一些工作,主要是从存储中获取一些对象,然后解析一些参数

显然,每当我想要分机B时,我也需要分机A在场。有没有办法强迫你这么做?我试过用
@extenddwith(A.class)
class
ExtensionB
注释,但似乎没有效果

有没有办法实现我所需要的


或者我只是以错误的方式使用junit5,应该只有一个扩展来为我做所有事情?

Jupiter扩展是无状态的,因此不声明彼此之间的依赖关系

想要有A和B两种类型的人吗?创建从A和B借用代码的扩展C


话虽如此,扩展可以通过扩展存储与自己和其他扩展通信:

为什么无状态意味着它们不能相互依赖?我有两个,一个在商店里储存东西,另一个在取回。基本上,我要问的是如何构建您提到的“扩展C”,如果现有的扩展B本身是无用的。