...
För app-tester tillhandahåller startern ett enkelt sätt att starta upp en WireMock-instans server på en slumpmässig, ledig port:
...
[1]
Annotering som anger att WireMock ska startas upp för aktuell testklass.[2]
Pekar ut var WireMock hittar resurser (mappningar etc.).För varje test-metod kommer metodnamnet att byggas på denna sökväg, t.ex. .../MyFirstAppTest/test1_successful/...
.
[3]
Pekar ut vilken klass som ska användas för att ladda context:en för testet. Kommer oftast att vara tjänstens applikationsklass, d.v.s. den klass som innehåller en main
-metod och som används för att starta tjänsten.[4]
Test-basklassen AbstractAppTest
innehåller funktionalitet för att bl.a. enkelt kunna sätta upp ett testfall, mot en förväntad endpoint ([5]
) med en viss HTTP-metod ([6]
), ett request ([7]
), en förväntad HTTP-status ([8]
) och ett förväntat svar ([9]
).
Rekommenderat är att placera app-tester under src/integration-test/java
och deras resurser under src/integration-test/resources
.
Porten som WireMock-servern startas på exponeras som wiremock.server.port
, och man bör då peka om eventuella URL:er för t.ex. integrationer att gå mot den lokala datorn och den porten. t.ex. integration.messaging.base-url=http://localhost:${wiremock.server.port}/...
ResourceLoaderExtension
Ramverket tillhandahåller en JUnit-extension för att enkelt kunna läsa in resurser i sina tester:
...