別のルーティングを作る
https://jp.ktor.work/quickstart/index.html#hello-world
ktor jp のクイックスタートを参考にする
Routing.kt に
routing {
get("/") {
call.respondText("Hello from root")
}
get("/demo") {
call.respondText("Hello from /demo ")
}
}
/demo に Hello from /demo のテキストを当てる
/ へのアクセスで Hello from root
/demo へのアクセスで Hello from /demo
これらが表示された。
val response = client.get("/")
assertEquals(HttpStatusCode.OK, response.status)
assertEquals("Hello from root", response.bodyAsText())
val response2 = client.get("/demo")
assertEquals(HttpStatusCode.OK, response2.status)
/demo でも 200 で返ってきているかだけをテストする。
全て通った。
2 つめを /demodummy のような存在しないルーティングにすると
| expected:<200 OK> but was:<404 Not Found>
400 だよって落ちる。
実行結果が見にくい問題。
しかし、デフォルトの kotlin.test, io.ktor.server.testing
これらのテストだと、通ったときに左側に進行状況が表示されない。
本当は testRoot OK ってでてほしい。
これは別のテストライブラリを使うことで解決できるらしい。
しかし、追加は失敗したので素直に kotlin.test を使うことにする。
今後
https://qiita.com/fisherman08/items/3879341ffd5aea8d02b2#should-spec
kotlintest を導入して should でかけるようにする。
https://qiita.com/kawano_fumihiko/items/4253e63f0c136fce0aef
HTML を Selenide でテストする。
Top comments (0)