Pistas
Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →
Las pistas solo funcionan si utilizas la biblioteca de aserciones de Kotest o el framework de pruebas Kotest
A veces, una aserción fallida contiene suficiente información en el mensaje de error para saber qué salió mal.
Por ejemplo:
username shouldBe "sksamuel"
Podría dar un error como:
expected: "sksamuel" but was: "sam@myemailaddress.com"
Y así podrías ver que estabas usando una dirección de email en el campo de nombre de usuario.
Pero supongamos que tienes una prueba como esta:
user.name shouldNotBe null
Si esto fallara, simplemente obtendrías:
<null> should not equal <null>
Lo cual no es particularmente útil. Aquí es donde entra en juego withClue.
Los helpers withClue y asClue añaden contexto adicional a las aserciones para que los fallos sean autoexplicativos:
Por ejemplo, podemos usar withClue con un mensaje de texto
withClue("Name should be present") {
user.name shouldNotBe null
}
Daría un error como este:
Name should be present
<null> should not equal <null>
También podemos usar la función de extensión asClue para convertir cualquier objeto en el mensaje de pista.
Por ejemplo:
data class HttpResponse(val status: Int, val body: String)
val response = HttpResponse(404, "the content")
response.asClue {
it.status shouldBe 200
it.body shouldBe "the content"
}
Mostraría:
HttpResponse(status=404, body=the content)
Expected :200
Actual :404