Skip to Content
TestingPrivzeti testi

Privzeti testi

Testiranje je v normaliziranem receptu privzeto vključeno s štirimi vnaprej določenimi imeni testov: boot, login, packages in network. To so majhne kontrole v gostu, ne celoten sprejemni nabor. Recept lahko testiranje izklopi ali zamenja seznam, nekateri tipi artefaktov pa uporabljajo ožji kontrakt.

Kaj privzeti testi dejansko dokazujejo

TestIzvedena kontrolaNe dokazuje
bootuptime se uspešno konča prek QEMU guest agentVsake poti zaganjalnika, zagona na strojni opremi ali odsotnosti opozoril jedra
loginwhoami je mogoče zagnati prek root kanala guest agentaInteraktivnega gesla, SSH ključa, PAM, desktop greeterja ali prijave končnega uporabnika
packagesEna od dpkg --list, rpm -qa ali pacman -Q uspeDa je nameščen vsak paket, zahtevan v promptu
networkDNS razreši example.com in TCP povezava na vrata 443 po omejenih ponovitvah uspeSplošnega stanja interneta, HTTP vsebine, vsakega vmesnika ali zasnove brez omrežja

Pot Ubuntu 24.04 CIS odstrani splošno omrežno kontrolo in namesto nje uporabi assertion feature, vezano na readiness. Pri receptu brez pričakovane internetne poti se neuspešna splošna omrežna kontrola lahko spremeni v opozorilo.

Kontrole feature in capabilities

Runner združi tudi kontrole iz metapodatkov vključenih feature, legacy hook test files, frozen capability plan, eksplicitnih custom tests in morebitnih benchmark tests. Podvojene assertions se odstranijo. Assertions z znanimi manjkajočimi parametri se opustijo s strežniškim opozorilom; preglejte nastali test plan, da opuščena kontrola ni sprejeta za uspeh.

Primeri: preverjanje nastavljenih SSH vrat, stanja storitve, zahtevanega paketa ali artefakta, specifičnega za recept. Obseg je odvisen od vključene feature: sama vključitev feature ne zagotavlja popolnega nabora assertions za to feature.

Branje rezultata

Uporabite vrstice assertion in evidence, ne le skupnega badge:

  • passed pomeni, da je izvedljiva kontrola vrnila pričakovani rezultat.
  • failed pomeni, da je kontrola tekla in nasprotovala pričakovanju.
  • error pomeni, da harness ni mogel izdati verdict.
  • skipped pomeni, da kontrola ni tekla, na primer ker ciljni VM ni bil prisoten.

Napake in preskoki niso uspehi. Dokončan image in uspešen test run sta ločena stanja; certificiranje je tretja vrata.

Določite močnejša sprejemna merila

Za dejansko obremenitev dodajte assertions, relevantne za prompt. Na primer:

{ "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 } } ] }

Nato preglejte zgrajen image v konzoli in za trditve, vezane na strojno opremo, testirajte na reprezentativni strojni opremi. Glej Lastne assertions in Vrste assertions.