0Pricing
Kotlin Academy · Leçon

Assertions

Vérifier le comportement

Assertions est une leçon Kotlin Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Kotlin Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Kotlin Academy comprend 4 leçons au total.

Qu’est-ce qu’une assertion ?

Une assertion vérifie qu’une valeur réelle correspond à la valeur attendue. En cas d’échec, le test échoue avec un message utile.

JUnit5 fournit des assertions dans org.junit.jupiter.api.Assertions.

assertEquals

L’assertion la plus courante. Notez l’ordre : valeur attendue en premier, valeur réelle en second.

import org.junit.jupiter.api.Assertions.assertEquals

fun main() {
    val sum = 2 + 3
    assertEquals(5, sum)
    println("passed")
}

assertTrue et assertFalse

Vérifiez directement les conditions booléennes.

import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Assertions.assertFalse

fun main() {
    assertTrue(10 > 5)
    assertFalse("".isNotEmpty())
    println("ok")
}

Assertions sur les valeurs nulles

Utilisez assertNull et assertNotNull pour vérifier la nullabilité. assertNotNull effectue également un smart cast dans de nombreux cas.

import org.junit.jupiter.api.Assertions.assertNotNull
import org.junit.jupiter.api.Assertions.assertNull

fun main() {
    val name: String? = "Ada"
    assertNotNull(name)
    assertNull(null)
    println("done")
}

Vérifier les exceptions

assertThrows vérifie qu’un bloc lève une exception précise. Il renvoie l’exception afin que vous puissiez examiner son message.

import org.junit.jupiter.api.Assertions.assertThrows
import org.junit.jupiter.api.Assertions.assertEquals

fun main() {
    val ex = assertThrows(IllegalArgumentException::class.java) {
        require(false) { "bad input" }
    }
    assertEquals("bad input", ex.message)
    println("caught")
}

Assertions groupées

assertAll exécute plusieurs assertions et signale tous les échecs ensemble au lieu de s’arrêter au premier.

import org.junit.jupiter.api.Assertions.assertAll
import org.junit.jupiter.api.Assertions.assertEquals

fun main() {
    assertAll(
        { assertEquals(2, 1 + 1) },
        { assertEquals(4, 2 + 2) }
    )
    println("all passed")
}

Messages d’échec

Transmettez un message (ou une lambda de message évaluée à la demande) pour rendre les échecs explicites.

import org.junit.jupiter.api.Assertions.assertEquals

fun main() {
    val balance = 100
    assertEquals(100, balance, "balance should be unchanged")
    println("ok")
}

Comparer des collections

assertEquals fonctionne avec les listes lorsque l’ordre et le contenu correspondent. Utilisez assertIterableEquals pour des itérables dont les types concrets diffèrent.

import org.junit.jupiter.api.Assertions.assertEquals

fun main() {
    val expected = listOf(1, 2, 3)
    val actual = (1..3).toList()
    assertEquals(expected, actual)
    println("lists equal")
}

Assertions fluides avec AssertK

Des bibliothèques comme AssertK proposent une syntaxe lisible de type assertThat(x).isEqualTo(y), populaire dans les bases de code Kotlin.

// assertThat(result).isEqualTo(5)
// assertThat(list).contains("a", "b")
// assertThat(name).isNotNull()

fail()

Appelez fail pour forcer un échec, ce qui est utile pour marquer des branches inatteignables ou des tests inachevés.

import org.junit.jupiter.api.Assertions.fail

fun process(x: Int): String = when {
    x > 0 -> "positive"
    else -> fail("unexpected value")
}

Choisir la bonne assertion

Choisissez l’assertion la plus spécifique afin d’obtenir des échecs clairs :

  • Égalité → assertEquals
  • Conditions → assertTrue/assertFalse
  • Erreurs → assertThrows
  • Vérifications multiples → assertAll

Vérification rapide

Vous voulez qu’un test signale toutes les vérifications échouées en une seule fois plutôt que de s’arrêter à la première. Que devez-vous utiliser ?

Récapitulatif

Vous connaissez maintenant les assertions de JUnit5 :

  • assertEquals (valeur attendue en premier), assertTrue/assertFalse
  • assertNull/assertNotNull, assertThrows
  • assertAll pour regrouper les vérifications
  • Ajoutez des messages pour plus de clarté

Ensuite : simuler les dépendances avec MockK.

Questions Fréquemment Posées

La leçon « Assertions » est-elle gratuite ?

Oui — le texte complet de « Assertions » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Kotlin Academy, passe à CoddyKit PRO. Le cours Kotlin Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Assertions » ?

Vérifier le comportement Tu pratiques Kotlin Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Kotlin Academy ?

Aucune expérience préalable n'est requise. Kotlin Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Assertions » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Kotlin Academy ?

Oui. Chaque leçon Kotlin Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Écrire des tests avec JUnit5
  2. Assertions
  3. Simulation avec MockK
  4. Tests des coroutines
← Retour à Kotlin Academy