Skip to Content
ReferenceAssertionstyper

Assertionstyper

Kanonisk referanse for assertions som kjøres i en provisjonert test-VM. Med mindre annet er angitt, er målet primary. Hver assertion krever også et lesbart felt description.

Stabile gjest-assertions

TypePåkrevde paramsValgfri oppførsel
user_existsusernameKjører id
user_passwordusernameVerifiserer at en ulåst passordhash finnes; forsøker ikke interaktiv innlogging
user_in_groupusername, groupAksepterer Vyatta-administrative ekvivalenter ved sjekk av sudo/admin
file_existspathAksepterer fil eller mappe
file_containspath, pattern eller contentBruker grep; verdien er et grep-mønster, ikke utelukkende literal sammenligning
file_permissionspath, modeSammenligner oktalmodus rapportert av stat
service_runningserviceSjekker systemd active state; kjenner et lite sett alias på tvers av distroer
service_enabledserviceSjekker systemd enablement
package_installedpackageSjekker gjestens støttede pakkebehandlerdatabase
port_listeningportprotocol kan være tcp eller udp; standard er TCP
command_succeedscommandExit code må være null; timeout_seconds/timeout begrenses til 1–1 800 sekunder
command_outputcommand pluss regex i expected_pattern, pattern, expected, eller assertion-level expectedMatcher stdout med Python regular-expression-semantikk
network_reachablehostcount standard 3; bruker ICMP ping
http_respondsurlstatus standard 200

Eksempel:

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

Kommandoen og fanget output kan bli testbevis. Ikke embed hemmeligheter.

GUI-assertions

GUI-sjekker avhenger av en fungerende displaysession og runnerens skjermdump- eller inndatahjelpere. De er mer miljøfølsomme enn gjestekommando-sjekker.

TypeHovedparametreHva som sjekkes
gui_application_opensapplication (kanonisk); handler aksepterer også startspesifikke valgStarter et program og leter etter et vindu
gui_window_visiblevindustittel- eller matchparametre brukt av handlerenLeter etter et eksisterende vindu
gui_execute_commandcommandKjører en skrivebordskommando; kan ta en skjermdump
gui_application_processprocess_nameLeter etter prosessen som headless fallback
gui_screenshot_matchesreference_id; valgfri threshold, crop/mask-regionerSammenligner gjeldende skjermdump med lagret referanse
gui_wallpaper_matcheswallpaper_path; valgfrie terskler og regionerSjekker konfigurert bakgrunnsbildesti og visuelt resultat
desktop_wallpaper_matcheswallpaper_pathKjører den strengere desktop-bakgrunnsbilde provenance/configuration/visual-sjekken
gui_click_elementx, ySender koordinatbasert pekerinndata
gui_form_fillfieldsFyller koordinatbeskrevne skjemafelt
gui_text_visibletext, contains, eller ocr_containsBruker OCR på skjermen eller en valgt region

Executoren aksepterer også kompatibilitetsalias for noen OCR- og bakgrunnstyper. Foretrekk de kanoniske navnene over i nye recipes. Koordinattester er oppløsningsfølsomme; bruk OCR eller resultatsjekker der det er mulig.

Benchmark-sjekker er et separat format

cis_benchmark finnes i oppskriftens historiske assertion-ordforråd, men den vanlige assertion-dispatcheren har ingen cis_benchmark-handler. CIS og andre benchmark-sjekker leveres som benchmark-poster med audit_script og kjøres via benchmark-runneren. Bruk CIS benchmark-workflow, ikke en custom assertion med type: "cis_benchmark".

Tolkning av resultat

  • Manglende påkrevde data gir error, eller planleggeren kan droppe assertionen med advarsel før kjøring.
  • Utilgjengelig on_vm-mål gir skipped.
  • Ikke matchende resultat gir failed.
  • Bare passed er bekreftende bevis for den assertionen.

Se Custom assertions for veiledning ved authoring.