Skip to Content
ReferenceAserciju tipi

Aserciju tipi

Kanoniska atsauce asercijām, kas tiek izpildītas sagatavotā testa VM. Ja nav norādīts citādi, mērķis ir primary. Katrai asercijai ir vajadzīgs arī cilvēkam lasāms lauks description.

Stabilas viesa asercijas

TipsObligātie paramsNeobligāta uzvedība
user_existsusernamePalaiž id
user_passwordusernamePārbauda, vai pastāv atbloķēts paroles hash; nemēģina interaktīvu pieteikšanos
user_in_groupusername, groupPārbaudot sudo/admin, pieņem Vyatta administratīvos ekvivalentus
file_existspathPieņem failu vai direktoriju
file_containspath, pattern vai contentIzmanto grep; vērtība ir grep šablons, ne tikai burtiska salīdzināšana
file_permissionspath, modeSalīdzina stat ziņoto oktālo režīmu
service_runningservicePārbauda systemd active state; pazīst mazu alias kopu starp distribūcijām
service_enabledservicePārbauda systemd enablement
package_installedpackagePārbauda viesa atbalstīto pakotņu pārvaldnieka datubāzi
port_listeningportprotocol var būt tcp vai udp; noklusējums ir TCP
command_succeedscommandIzietes kodam jābūt null; timeout_seconds/timeout ierobežots līdz 1–1 800 sekundēm
command_outputcommand un regex laukā expected_pattern, pattern, expected vai asercijas līmeņa expectedSaskaņo stdout ar Python regular-expression semantiku
network_reachablehostcount noklusējums 3; izmanto ICMP ping
http_respondsurlstatus noklusējums 200

Piemērs:

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

Komanda un nofiksētā izvade var kļūt par testa pierādījumu. Neievieto noslēpumus.

GUI asercijas

GUI pārbaudes ir atkarīgas no darbojošās displeja sesijas un runner ekrānuzņēmumu vai ievades palīgiem. Tās ir jutīgākas pret vidi nekā viesa komandu pārbaudes.

TipsGalvenie parametriKo pārbauda
gui_application_opensapplication (kanoniskais); handler pieņem arī palaišanai specifiskas opcijasPalaiž lietotni un meklē logu
gui_window_visibleloga virsraksta vai saskaņošanas parametri, ko izmanto handlerMeklē esošu logu
gui_execute_commandcommandIzpilda darbvirsmas komandu; var uzņemt ekrānuzņēmumu
gui_application_processprocess_nameMeklē procesu kā headless rezerves variantu
gui_screenshot_matchesreference_id; neobligāts threshold, crop/mask reģioniSalīdzina pašreizējo ekrānuzņēmumu ar saglabāto reference
gui_wallpaper_matcheswallpaper_path; neobligāti sliekšņi un reģioniPārbauda konfigurēto fona attēla ceļu un vizuālo rezultātu
desktop_wallpaper_matcheswallpaper_pathIzpilda stingrāku desktop wallpaper provenance/configuration/visual pārbaudi
gui_click_elementx, ySūta koordinātēm balstītu rādītāja ievadi
gui_form_fillfieldsAizpilda ar koordinātēm aprakstītus formas laukus
gui_text_visibletext, contains vai ocr_containsIzmanto OCR ekrānā vai izvēlētā reģionā

Izpildītājs pieņem arī saderības alias dažiem OCR un wallpaper tipiem. Jaunos recipes dod priekšroku kanoniskajiem nosaukumiem augstāk. Koordinātu testi ir atkarīgi no izšķirtspējas; kur iespējams, izmanto OCR vai rezultāta pārbaudes.

Benchmark pārbaudes ir atsevišķs formāts

cis_benchmark ir recepta vēsturiskajā aserciju vārdnīcā, taču parastajam assertion dispatcher nav cis_benchmark handler. CIS un citas benchmark pārbaudes tiek piegādātas kā benchmark ieraksti ar audit_script un tiek izpildītas caur benchmark runner. Izmanto CIS benchmark darbplūsmu, nevis custom assertion ar type: "cis_benchmark".

Rezultāta interpretācija

  • Trūkstošie obligātie dati dod error, vai planner var atmest aserciju ar brīdinājumu pirms izpildes.
  • Nepieejams on_vm mērķis dod skipped.
  • Nesakrītošs rezultāts dod failed.
  • Tikai passed ir apstiprinošs pierādījums šai asercijai.

Skatīt Custom assertions norādījumiem autorēšanā.