Standardtester
Testing er aktivert som standard i en normalisert oppskrift, med fire
forhåndsdefinerte testnavn: boot, login, packages og network. Dette
er små gjestekontroller, ikke en full acceptansesuite. En oppskrift kan slå av
testing eller erstatte listen, og noen artefakttyper bruker en smalere
kontrakt.
Hva standardtestene faktisk viser
| Test | Utført kontroll | Viser ikke |
|---|---|---|
boot | uptime avsluttes med suksess via QEMU guest agent | Hver bootloader-sti, hardware-boot eller fravær av kerneladvarsler |
login | whoami kan kjøres via root guest-agent-kanalen | Interaktivt passord, SSH-nøkkel, PAM, desktop-greeter eller sluttbrukerinnlogging |
packages | Én av dpkg --list, rpm -qa eller pacman -Q lykkes | At hver pakke bedt om i prompten er installert |
network | DNS løser example.com, og en TCP-tilkobling til port 443 lykkes etter begrensede retries | Generell internetthelse, HTTP-innhold, hvert grensesnitt eller et air-gapped design |
Ubuntu 24.04 CIS-stien fjerner den generiske nettverkskontrollen og bruker i stedet sin readiness-gated feature assertion. En oppskrift uten forventet internett-rute kan få en mislykket generisk nettverkskontroll konvertert til en advarsel.
Feature- og capability-kontroller
Runneren slår også sammen kontroller fra aktivert feature-metadata, legacy hook test files, frozen capability plan, eksplisitte custom tests og benchmark tests. Duplikate assertions fjernes. Assertions med kjente manglende parametre droppes med en serveradvarsel; gå gjennom resulterende testplan slik at en droppet kontroll ikke forveksles med en pass.
Eksempler er konfigurert SSH-port, tjenestestatus, etterspurt pakke eller oppskriftsspesifikt artefakt. Dekning avhenger av aktivert feature: å ta med en feature garanterer ikke i seg selv et fullt assertion-sett for den featuren.
Lese resultatet
Bruk assertion-radene og evidence, ikke bare aggregate badge:
passedbetyr at den kjørbare kontrollen returnerte forventet resultat.failedbetyr at kontrollen kjørte og motsa forventningen.errorbetyr at harness ikke kunne produsere et verdict.skippedbetyr at kontrollen ikke kjørte, for eksempel fordi mål-VM manglet.
Errors og skips er ikke passes. Et ferdig image og en passed test run er adskilte tilstander; sertifisering er en tredje port.
Definer sterkere acceptkriterier
For en reell workload legger du til prompt-relevante assertions. For eksempel:
{
"description": "Nginx serves the local health endpoint",
"assertions": [
{
"type": "service_running",
"description": "Nginx is active",
"params": { "service": "nginx" }
},
{
"type": "http_responds",
"description": "Health endpoint returns 200",
"params": { "url": "http://localhost/health", "status": 200 }
}
]
}Inspecter deretter det bygde imaget i konsollen, og test hardware-bound claims på representativt hardware. Se Egne påstander og Assertionstyper.