Skip to Content
ReferenceAssertiótípusok

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ípusKötelező paramsOpcionális viselkedés
user_existsusernameFuttatja az id parancsot
user_passwordusernameEllenőrzi, hogy létezik feloldott jelszó hash; nem próbál interaktív bejelentkezést
user_in_groupusername, groupA sudo/admin ellenőrzésnél elfogadja a Vyatta adminisztratív megfelelőit
file_existspathElfogad fájlt vagy könyvtárat
file_containspath, pattern vagy contentA grep-et használja; az érték grep minta, nem pusztán szó szerinti összehasonlítás
file_permissionspath, modeÖsszehasonlítja a stat által jelentett oktális módot
service_runningserviceA systemd active állapotát ellenőrzi; ismer egy kis disztribúciók közötti alias készletet
service_enabledserviceA systemd engedélyezését ellenőrzi
package_installedpackageA vendég támogatott csomagkezelő adatbázisát ellenőrzi
port_listeningportA protocol lehet tcp vagy udp; alapértelmezés szerint TCP
command_succeedscommandA kilépési kódnak nullának kell lennie; a timeout_seconds/timeout 1–1 800 másodpercre van korlátozva
command_outputcommand plusz regex az expected_pattern, pattern, expected vagy az assertió szintű expected mezőbenA stdout-ot Python reguláris kifejezés szemantikával illeszti
network_reachablehostA count alapértelmezés szerint 3; ICMP pinget használ
http_respondsurlA 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ípusFő paraméterekMit ellenőriz
gui_application_opensapplication (kanonikus); a handler indításspecifikus opciókat is elfogadElindít egy alkalmazást és ablakot keres
gui_window_visibleablomcím vagy illesztési paraméterek, amelyeket a handler használMeglévő ablakot keres
gui_execute_commandcommandAsztali parancsot futtat; készíthet képernyőképet
gui_application_processprocess_nameA folyamatot headless tartalékként keresi
gui_screenshot_matchesreference_id; opcionális threshold, crop/mask régiókAz aktuális képernyőképet a tárolt referenciával hasonlítja
gui_wallpaper_matcheswallpaper_path; opcionális küszöbök és régiókA beállított háttérkép útvonalát és vizuális eredményt ellenőrzi
desktop_wallpaper_matcheswallpaper_pathSzigorúbb asztali háttérkép eredet/konfiguráció/megjelenés ellenőrzést futtat
gui_click_elementx, yKoordináta alapú mutatóbemenetet küld
gui_form_fillfieldsKoordinátákkal leírt űrlapmezőket tölt ki
gui_text_visibletext, contains vagy ocr_containsOCR-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_vm cél skipped-et ad.
  • Nem illeszkedő eredmény failed-et ad.
  • Csak a passed pozitív bizonyíték az adott assertióra.

Lásd a Custom assertions oldalt útmutatásért a szerzői munkához.