Assertiótípusok
Kanónikus referencia a kiépített teszt VM-en belül futó assertiókhoz.
Ha másként nincs jelezve, a cél a primary. Minden assertióhoz ember által
olvasható description mező is kell.
Stabil vendég assertiók
| Típus | Kötelező params | Opcionális viselkedés |
|---|---|---|
user_exists | username | Futtatja az id parancsot |
user_password | username | Ellenőrzi, hogy létezik feloldott jelszó hash; nem próbál interaktív bejelentkezést |
user_in_group | username, group | A sudo/admin ellenőrzésnél elfogadja a Vyatta adminisztratív megfelelőit |
file_exists | path | Elfogad fájlt vagy könyvtárat |
file_contains | path, pattern vagy content | A grep-et használja; az érték grep minta, nem pusztán szó szerinti összehasonlítás |
file_permissions | path, mode | Összehasonlítja a stat által jelentett oktális módot |
service_running | service | A systemd active állapotát ellenőrzi; ismer egy kis disztribúciók közötti alias készletet |
service_enabled | service | A systemd engedélyezését ellenőrzi |
package_installed | package | A vendég támogatott csomagkezelő adatbázisát ellenőrzi |
port_listening | port | A protocol lehet tcp vagy udp; alapértelmezés szerint TCP |
command_succeeds | command | A kilépési kódnak nullának kell lennie; a timeout_seconds/timeout 1–1 800 másodpercre van korlátozva |
command_output | command plusz regex az expected_pattern, pattern, expected vagy az assertió szintű expected mezőben | A stdout-ot Python reguláris kifejezés szemantikával illeszti |
network_reachable | host | A count alapértelmezés szerint 3; ICMP pinget használ |
http_responds | url | A status alapértelmezés szerint 200 |
Példa:
{
"type": "command_output",
"description": "Application reports the expected release",
"params": {
"command": "/opt/acme/bin/acme --version",
"expected_pattern": "^acme 2\\.4\\.[0-9]+$"
}
}A parancs és a rögzített kimenet tesztbizonyítékká válhat. Ne ágyazzon be titkokat.
GUI assertiók
A GUI ellenőrzések működő kijelző munkamenetre és a runner képernyőképes vagy bemeneti segédjeire támaszkodnak. Környezetérzékenyebbek, mint a vendég parancs ellenőrzések.
| Típus | Fő paraméterek | Mit ellenőriz |
|---|---|---|
gui_application_opens | application (kanonikus); a handler indításspecifikus opciókat is elfogad | Elindít egy alkalmazást és ablakot keres |
gui_window_visible | ablomcím vagy illesztési paraméterek, amelyeket a handler használ | Meglévő ablakot keres |
gui_execute_command | command | Asztali parancsot futtat; készíthet képernyőképet |
gui_application_process | process_name | A folyamatot headless tartalékként keresi |
gui_screenshot_matches | reference_id; opcionális threshold, crop/mask régiók | Az aktuális képernyőképet a tárolt referenciával hasonlítja |
gui_wallpaper_matches | wallpaper_path; opcionális küszöbök és régiók | A beállított háttérkép útvonalát és vizuális eredményt ellenőrzi |
desktop_wallpaper_matches | wallpaper_path | Szigorúbb asztali háttérkép eredet/konfiguráció/megjelenés ellenőrzést futtat |
gui_click_element | x, y | Koordináta alapú mutatóbemenetet küld |
gui_form_fill | fields | Koordinátákkal leírt űrlapmezőket tölt ki |
gui_text_visible | text, contains vagy ocr_contains | OCR-t használ a képernyőn vagy kiválasztott régióban |
A végrehajtó kompatibilitási aliasokat is elfogad egyes OCR és háttérkép típusokhoz. Új receptekben a fenti kanonikus neveket részesítse előnyben. A koordináta tesztek felbontásérzékenyek; ahol lehet, OCR-t vagy eredmény ellenőrzést használjon.
Benchmark ellenőrzések külön formátum
A cis_benchmark szerepel a recept történelmi assertió szókincsében, de
a szokásos assertió diszpécsernek nincs cis_benchmark handlerje. A CIS és
más benchmark ellenőrzések benchmark rekordként érkeznek audit_script mezővel,
és a benchmark runner futtatja őket. Használja a
CIS benchmark munkafolyamatot, ne egyedi assertiót
type: "cis_benchmark" értékkel.
Eredmény értelmezése
- Hiányzó kötelező adat
error-t ad, vagy a tervező figyelmeztetéssel kihagyhatja az assertiót végrehajtás előtt. - Elérhetetlen
on_vmcélskipped-et ad. - Nem illeszkedő eredmény
failed-et ad. - Csak a
passedpozitív bizonyíték az adott assertióra.
Lásd a Custom assertions oldalt útmutatásért a szerzői munkához.