Predvolené testy
Testovanie je v normalizovanom recepte predvolene zapnuté so štyrmi
preddefinovanými názvami testov: boot, login, packages a network. Ide o
malé kontroly v gueste, nie o kompletnú akceptačnú sadu. Recept môže testovanie
vypnúť alebo zoznam nahradiť a niektoré typy artefaktov používajú užší kontrakt.
Čo predvolené testy skutočne dokazujú
| Test | Vykonaná kontrola | Nedokazuje |
|---|---|---|
boot | uptime skončí úspešne cez QEMU guest agent | Každú cestu bootloadera, boot na hardvéri ani absenciu varovaní jadra |
login | whoami sa dá spustiť cez root kanál guest agenta | Interaktívne heslo, SSH kľúč, PAM, desktop greeter ani prihlásenie koncového používateľa |
packages | Jedna z dpkg --list, rpm -qa alebo pacman -Q uspeje | Že je nainštalovaný každý balík požadovaný v prompte |
network | DNS vyrieši example.com a TCP spojenie na port 443 po obmedzených opakovaniach uspeje | Všeobecnú konektivitu internetu, HTTP obsah, každé rozhranie ani dizajn bez prístupu k sieti |
Cesta Ubuntu 24.04 CIS odstráni všeobecnú sieťovú kontrolu a namiesto nej použije assertion feature viazanú na readiness. Pri recepte bez očakávanej internetovej trasy sa neúspešná všeobecná sieťová kontrola môže premeniť na varovanie.
Kontroly feature a capabilities
Runner tiež zlúči kontroly z metadát zapnutých feature, legacy hook test files, frozen capability plan, explicitných custom tests a prípadných benchmark tests. Duplicitné assertions sa odstránia. Assertions s chýbajúcimi známymi parametrami sa vynechajú so serverovým varovaním; prejdite výsledný test plan, aby vynechaná kontrola nebola považovaná za úspech.
Príklady: kontrola nastaveného SSH portu, stavu služby, požadovaného balíka alebo artefaktu špecifického pre recept. Pokrytie závisí od zapnutej feature: samotné zahrnutie feature nezaručuje kompletnú sadu assertions pre túto feature.
Čítanie výsledku
Vychádzajte z riadkov assertion a evidence, nielen zo súhrnného badge:
passedznamená, že spustiteľná kontrola vrátila očakávaný výsledok.failedznamená, že kontrola prebehla a nesúhlasila s očakávaním.errorznamená, že harness nemohol vydať verdict.skippedznamená, že kontrola neprebehla, napríklad pretože cieľová VM chýbala.
Chyby a preskočenia nie sú úspechy. Dokončený image a úspešný test run sú oddelené stavy; certifikácia je tretia brána.
Definujte silnejšie akceptačné kritériá
Pre skutočnú workload pridajte assertions relevantné k promptu. Napríklad:
{
"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 }
}
]
}Potom skontrolujte zostavený image v konzole a pri tvrdeniach viazaných na hardware testujte na reprezentatívnom hardvéri. Pozrite Vlastné assertions a Typy assertions.