Skip to Content
TestingStandardtest

Standardtest

Testning er aktiveret som standard i en normaliseret opskrift, med fire foruddefinerede testnavne: boot, login, packages og network. Det er små gæstekontroller, ikke en fuld accepttestsuite. En opskrift kan slå test fra eller erstatte listen, og nogle artefakttyper bruger en smallere kontrakt.

Hvad standardtestene faktisk viser

TestUdført kontrolViser ikke
bootuptime afsluttes med succes via QEMU guest agentHver bootloader-sti, hardware-boot eller fravær af kerneladvarsler
loginwhoami kan køre via root guest-agent-kanalenInteraktivt kodeord, SSH-nøgle, PAM, desktop-greeter eller slutbrugerlogin
packagesEt af dpkg --list, rpm -qa eller pacman -Q lykkesAt hver pakke anmodet i prompten er installeret
networkDNS opløser example.com, og en TCP-forbindelse til port 443 lykkes efter begrænsede retriesGenerel internetsundhed, HTTP-indhold, hvert interface eller et air-gapped design

Ubuntu 24.04 CIS-stien fjerner den generiske netværkskontrol og bruger i stedet sin readiness-gated feature assertion. En opskrift uden forventet internetrute kan få en mislykket generisk netværkskontrol konverteret til en advarsel.

Feature- og capability-kontroller

Runneren fletter også kontroller fra aktiveret feature-metadata, legacy hook test files, frozen capability plan, eksplicitte custom tests og benchmark tests. Dubletter af assertions fjernes. Assertions med kendte manglende parametre droppes med en serveradvarsel; gennemgå den resulterende testplan, så en droppet kontrol ikke forveksles med en pass.

Eksempler er konfigureret SSH-port, servicestatus, anmodet pakke eller opskriftsspecifikt artefakt. Dækning afhænger af aktiveret feature: at inkludere en feature garanterer ikke i sig selv et fuldt assertion-sæt for den feature.

Læse resultatet

Brug assertion-rækkerne og evidence, ikke kun aggregate badge:

  • passed betyder, at den kørbare kontrol returnerede det forventede resultat.
  • failed betyder, at kontrollen kørte og modsagde forventningen.
  • error betyder, at harness ikke kunne producere et verdict.
  • skipped betyder, at kontrollen ikke kørte, for eksempel fordi mål-VM manglede.

Errors og skips er ikke passes. Et færdigt image og en passed test run er adskilte tilstande; certificering er en tredje port.

Definér stærkere acceptkriterier

Til en reel workload tilføjer du 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 } } ] }

Inspectér derefter det byggede image i konsollen, og test hardware-bound claims på repræsentativt hardware. Se Egne assertions og Assertionstyper.