Ir al contenido principal
Versión: 5.2.x

Pistas

[Traducción Beta No Oficial]

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

nota

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