Skip to Content
TestingVýchozí testy

Výchozí testy

Testování je ve normalizovaném receptu ve výchozím stavu zapnuté se čtyřmi předdefinovanými názvy testů: boot, login, packages a network. Jde o malé kontroly v guestu, ne o kompletní akceptační sadu. Recept může testování vypnout nebo seznam nahradit a některé typy artefaktů používají užší kontrakt.

Co výchozí testy skutečně dokazují

TestProvedená kontrolaNedokazuje
bootuptime skončí úspěšně přes QEMU guest agentKaždou cestu bootloaderu, boot na hardwaru ani absenci varování jádra
loginwhoami lze spustit přes root kanál guest agentaInteraktivní heslo, SSH klíč, PAM, desktop greeter ani přihlášení koncového uživatele
packagesJedna z dpkg --list, rpm -qa nebo pacman -Q uspějeŽe je nainstalován každý balíček požadovaný v promptu
networkDNS vyřeší example.com a TCP spojení na port 443 po omezených opakováních uspějeObecnou konektivitu internetu, HTTP obsah, každé rozhraní ani design bez přístupu k síti

Cesta Ubuntu 24.04 CIS odstraní obecnou síťovou kontrolu a místo ní použije assertion feature vázanou na readiness. U receptu bez očekávané internetové trasy lze neúspěšnou obecnou síťovou kontrolu převést na varování.

Kontroly feature a capabilities

Runner také sloučí kontroly z metadat zapnutých feature, legacy hook test files, frozen capability plan, explicitních custom tests a případných benchmark tests. Duplicitní assertions se odstraní. Assertions s chybějícími známými parametry se vynechají se serverovým varováním; projděte výsledný test plan, aby vynechaná kontrola nebyla považována za úspěch.

Příklady: kontrola nastaveného SSH portu, stavu služby, požadovaného balíčku nebo artefaktu specifického pro recept. Pokrytí závisí na zapnuté feature: samotné zahrnutí feature nezaručuje kompletní sadu assertions pro tuto feature.

Čtení výsledku

Vycházejte z řádků assertion a evidence, ne jen ze souhrnného badge:

  • passed znamená, že spustitelná kontrola vrátila očekávaný výsledek.
  • failed znamená, že kontrola proběhla a nesouhlasila s očekáváním.
  • error znamená, že harness nemohl vydat verdict.
  • skipped znamená, že kontrola neproběhla, například protože cílová VM chyběla.

Chyby a přeskočení nejsou úspěchy. Dokončený image a úspěšný test run jsou oddělené stavy; certifikace je třetí brána.

Definujte silnější akceptační kritéria

Pro skutečnou workload přidejte assertions relevantní k promptu. Napří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 } } ] }

Poté zkontrolujte sestavený image v konzoli a u tvrzení vázaných na hardware testujte na reprezentativním hardwaru. Viz Vlastní assertions a Typy assertions.