How do I replace DropwizardAppRule in Junit5

David says Reinstate Monica :

In Junit 4 I could do something like

@ClassRule
public DropwizardAppRule<Configuration> app = new DropwizardAppRule<>(MyApp.class);

...

app.getLocalPort()

How do I replicate this behavior in Junit 5? From this github issue it seems like I need to use @ExtendWith(DropwizardExtensionsSupport.class), but its unclear how

Alex Shesterov :

Dropwizard 1.3.0 added JUnit5 support by introducing the DropwizardExtensionsSupport class.

Specifically, if you need to start / stop the application at the beginning / end of your tests (which is what DropwizardAppRule does), there's a DropwizardAppExtension available.

Your example, rewritten for JUnit5:

@ExtendWith(DropwizardExtensionsSupport.class)
public class MyTest {

    public static final DropwizardAppExtension<Config> app = new DropwizardAppExtension<>(MyApp.class);

    ...

       // app.getLocalPort() is also available

}

Unfortunately, the JUnit5 support doesn't seem to be documented yet.

Links:

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=115322&siteId=1