Skip to Content
ReferencePatvirtinimų tipai

Patvirtinimų tipai

Kanonicinė nuoroda patvirtinimams, vykdomiems paruoštoje testinėje VM. Jei nenurodyta kitaip, tikslas yra primary. Kiekvienam patvirtinimui taip pat reikia žmogui skaitomo lauko description.

Stabilūs svečio patvirtinimai

TipasPrivalomi paramsPasirenkamas elgesys
user_existsusernameVykdo id
user_passwordusernameTikrina, ar yra atrakintos slaptažodžio maišos; nebandys interaktyvaus prisijungimo
user_in_groupusername, groupTikrinant sudo/admin priima Vyatta administracinius atitikmenis
file_existspathPriima failą ar katalogą
file_containspath, pattern arba contentNaudoja grep; reikšmė yra grep šablonas, ne grynai literalus palyginimas
file_permissionspath, modeLygina stat praneštą aštuntainį režimą
service_runningserviceTikrina systemd active state; žino nedidelį alias rinkinį skirtingoms distribucijoms
service_enabledserviceTikrina systemd enablement
package_installedpackageTikrina svečio palaikomą paketų tvarkyklės duomenų bazę
port_listeningportprotocol gali būti tcp arba udp; numatyta TCP
command_succeedscommandIšeities kodas turi būti nulis; timeout_seconds/timeout ribojamas iki 1–1 800 sekundžių
command_outputcommand ir regex lauke expected_pattern, pattern, expected arba patvirtinimo lygio expectedDerina stdout pagal Python regular-expression semantiką
network_reachablehostcount numatyta 3; naudoja ICMP ping
http_respondsurlstatus numatyta 200

Pavyzdys:

{ "type": "command_output", "description": "Application reports the expected release", "params": { "command": "/opt/acme/bin/acme --version", "expected_pattern": "^acme 2\\.4\\.[0-9]+$" } }

Komanda ir užfiksuota išvestis gali tapti testo įrodymu. Nededk slaptų duomenų.

GUI patvirtinimai

GUI tikrinimai priklauso nuo veikiančios ekrano sesijos ir runnerio ekrano kopijų ar įvesties pagalbininkų. Jie jautresni aplinkai nei svečio komandų tikrinimai.

TipasPagrindiniai parametraiKą tikrina
gui_application_opensapplication (kanoninis); handler taip pat priima paleidimui specifinius variantusPaleidžia programą ir ieško lango
gui_window_visiblelango pavadinimo ar atitikimo parametrai, kuriuos naudoja handlerIeško esamo lango
gui_execute_commandcommandVykdo darbalaukio komandą; gali padaryti ekrano kopiją
gui_application_processprocess_nameIeško proceso kaip headless atsarginio varianto
gui_screenshot_matchesreference_id; pasirenkamas threshold, crop/mask regionaiLygina dabartinę ekrano kopiją su išsaugota reference
gui_wallpaper_matcheswallpaper_path; pasirenkami slenkstiai ir regionaiTikrina sukonfigūruotą darbalaukio fono kelią ir vizualinį rezultatą
desktop_wallpaper_matcheswallpaper_pathVykdo griežtesnį desktop wallpaper provenance/configuration/visual tikrinimą
gui_click_elementx, ySiunčia koordinatėmis pagrįstą rodyklės įvestį
gui_form_fillfieldsUžpildo koordinatėmis aprašytus formos laukus
gui_text_visibletext, contains arba ocr_containsNaudoja OCR ekrane ar pasirinktame regione

Vykdytojas taip pat priima suderinamumo alias kai kuriems OCR ir wallpaper tipams. Naujuose recipes naudok kanoninius pavadinimus aukščiau. Koordinačių testai priklauso nuo raiškos; kur įmanoma, naudok OCR arba rezultato tikrinimus.

Benchmark tikrinimai yra atskiras formatas

cis_benchmark yra recepto istoriniame patvirtinimų žodyne, tačiau įprastas assertion dispatcher neturi cis_benchmark handler. CIS ir kiti benchmark tikrinimai pateikiami kaip benchmark įrašai su audit_script ir vykdomi per benchmark runner. Naudok CIS benchmark darbo eigą, o ne custom assertion su type: "cis_benchmark".

Rezultato interpretacija

  • Trūkstant privalomų duomenų gaunama error, arba planner gali pašalinti patvirtinimą su įspėjimu prieš vykdymą.
  • Nepasiekiamas on_vm tikslas duoda skipped.
  • Nesutampantis rezultatas duoda failed.
  • Tik passed yra teigiamas įrodymas tam patvirtinimui.

Žr. Custom assertions autorinio rengimo gairėms.