在Junit 4中,我可以做类似的事情
@ClassRule
public DropwizardAppRule<Configuration> app = new DropwizardAppRule<>(MyApp.class);
...
app.getLocalPort()
如何在Junit 5中复制此行为?从this github问题来看,似乎我需要使用
@ExtendWith(DropwizardExtensionsSupport.class)
,但不清楚如何 最佳答案
Dropwizard 1.3.0 added通过引入 DropwizardExtensionsSupport
class来支持JUnit5。
具体来说,如果您需要在测试的开始/结束时启动/停止应用程序(这是DropwizardAppRule
所做的),则可以使用 DropwizardAppExtension
。
您的示例,为JUnit5重写:
@ExtendWith(DropwizardExtensionsSupport.class)
public class MyTest {
public static final DropwizardAppExtension<Config> app = new DropwizardAppExtension<>(MyApp.class);
...
// app.getLocalPort() is also available
}
不幸的是,JUnit5支持doesn't seem to be documented yet。
链接: