Testing Vert.x Applications
Discover how to write integration tests for Vert.x applications using JUnit 5 in Kotlin. Explore setting up dependencies, deploying server verticles, and using the Vert.x Web Client to perform HTTP requests and validate server responses reactively.
We'll cover the following...
We'll cover the following...
Adding dependencies
To test our Vert.x application, we’ll use the JUnit 5 framework.
We’ll need the following two dependencies in our build.gradle.kts file:
dependencies {
...
testImplementation("org.junit.jupiter:junit-jupiter-
api:5.6.0")
testRuntimeOnly("org.junit.jupiter:junit-jupiter-
engine:5.6.0")
}
Writing tests in the AppTest.kt file:
Our first test will be located in the /src/test/kotlin/catsshelter/AppTest.kt file.
The basic structure of all the integration tests looks something like this:
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
class ServerTest {
private val vertx: Vertx = Vertx.vertx()
@BeforeAll
fun setup() {
runBlocking {
...