Ich versuche Integrationstests mit Spring zu lernen. So verfolge ich dieses Tutorial:So führen Sie einen Integrationstest im Frühling mit @SpringBootTest durch
http://www.lucassaldanha.com/unit-and-integration-tests-in-spring-boot/
Ich bin fase ein Test-Klasse wie folgt aus:
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
public class GreetingControllerTest {
@Test
public void helloTest(){
TestRestTemplate restTemplate = new TestRestTemplate();
Hello hello = restTemplate.getForObject("http://localhost:8080/hello", Hello.class);
Assert.assertEquals(hello.getMessage(), "ola!");
}
}
Aber wenn ich mvn installieren, erhalte ich diese Fehlermeldung:
E/A-Fehler bei GET-Anforderung für "http://localhost:8080/hello": Verbindung abgelehnt; verschachtelte Ausnahme ist java.net.ConnectException: Verbindung verweigert
Also ... Was mache ich falsch? Was muss ich tun, damit mein Test funktioniert?
Hinweis: Wenn ich laufen mvn feder boot: laufen das Projekt funktioniert gut, und ich fordere den Endpunkt mit jedem beliebigen Browser.
Ich glaube, dass Sie die 'TestRestTemplate' injizieren müssen. Entweder das, oder Sie müssen den Port nicht angeben, da Sie 'RANDOM_PORT' verwenden. – chrylis