Påstander
Bekreft atferd
Påstander er en gratis leksjon i Kotlin Academy på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Kotlin Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Kotlin Academy inneholder totalt 4 leksjoner.
Hva er en assertion?
En assertion kontrollerer at en faktisk verdi stemmer med det du forventer. Hvis den mislykkes, mislykkes testen med en nyttig melding.
JUnit5 tilbyr assertions i org.junit.jupiter.api.Assertions.
assertEquals
Den vanligste assertionen. Legg merke til rekkefølgen: forventet først, faktisk verdi deretter.
import org.junit.jupiter.api.Assertions.assertEquals
fun main() {
val sum = 2 + 3
assertEquals(5, sum)
println("passed")
}assertTrue og assertFalse
Kontroller boolske betingelser direkte.
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Assertions.assertFalse
fun main() {
assertTrue(10 > 5)
assertFalse("".isNotEmpty())
println("ok")
}Assertions for null
Bruk assertNull og assertNotNull for å kontrollere null-verdier. assertNotNull utfører også smart-casting i mange tilfeller.
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")
}Kontrollere exceptions
assertThrows kontrollerer at en kodeblokk kaster et bestemt exception. Den returnerer exception-et slik at du kan undersøke meldingen.
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")
}Grupperte assertions
assertAll kjører flere assertions og rapporterer alle feil samlet i stedet for å stoppe ved den første.
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")
}Feilmeldinger
Send inn en melding (eller en lazy-meldingslambda) for å gjøre feil selvforklarende.
import org.junit.jupiter.api.Assertions.assertEquals
fun main() {
val balance = 100
assertEquals(100, balance, "balance should be unchanged")
println("ok")
}Sammenligne samlinger
assertEquals fungerer for lister når rekkefølge og innhold samsvarer. Bruk assertIterableEquals for iterables med ulike konkrete typer.
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")
}Flytende assertions med AssertK
Biblioteker som AssertK tilbyr en lesbar stil med assertThat(x).isEqualTo(y), som er populær i Kotlin-kodebaser.
// assertThat(result).isEqualTo(5)
// assertThat(list).contains("a", "b")
// assertThat(name).isNotNull()fail()
Kall fail for å tvinge frem en feil. Dette er nyttig for å merke grener som ikke skal nås, eller uferdige tester.
import org.junit.jupiter.api.Assertions.fail
fun process(x: Int): String = when {
x > 0 -> "positive"
else -> fail("unexpected value")
}Velge riktig assertion
Velg den mest spesifikke assertionen for å få tydelige feil:
- Likhet →
assertEquals - Betingelser →
assertTrue/assertFalse - Feil →
assertThrows - Flere kontroller →
assertAll
Hurtigsjekk
Du vil at en test skal rapportere alle mislykkede kontroller samtidig i stedet for å stoppe ved den første. Hva bruker du?
Oppsummering
Du kjenner nå JUnit5-assertions:
assertEquals(forventet først),assertTrue/assertFalseassertNull/assertNotNull,assertThrowsassertAllfor grupperte kontroller- Legg til meldinger for tydelighet
Deretter: mocke avhengigheter med MockK.
Lær deg Kotlin med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 51
- Leksjoner
- 203
Ofte stilte spørsmål
Er leksjonen «Påstander» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Kotlin Academy, inkludert «Påstander», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Kotlin Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Påstander»?
Bekreft atferd Du øver på Kotlin Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Kotlin Academy?
Ingen tidligere erfaring er nødvendig. Kotlin Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Påstander»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Kotlin Academy-leksjonen?
Ja. Alle Kotlin Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.