Väitetyypit
Kanoninen viite väitteille, jotka ajetaan valmiiksi provisoidussa testi-VM:ssä.
Ellei toisin mainita, kohde on primary. Jokainen väite vaatii myös luettavan
kentän description.
Vakaat guest-väitteet
| Tyyppi | Pakolliset params | Valinnainen käyttäytyminen |
|---|---|---|
user_exists | username | Ajaa id |
user_password | username | Varmistaa, että lukitsematon salasanatiiviste on olemassa; ei yritä interaktiivista kirjautumista |
user_in_group | username, group | Hyväksyy Vyattan hallintavastineet tarkistettaessa sudo/admin |
file_exists | path | Hyväksyy tiedoston tai hakemiston |
file_contains | path, pattern tai content | Käyttää grep; arvo on grep-kuvio, ei pelkkä literaalivertailu |
file_permissions | path, mode | Vertaa stat:in raportoimaa oktaalityyppiä |
service_running | service | Tarkistaa systemd active state; tuntee pienen joukon alias-nimiä distrojen välillä |
service_enabled | service | Tarkistaa systemd enablement |
package_installed | package | Tarkistaa guestin tuetun paketinhallintatietokannan |
port_listening | port | protocol voi olla tcp tai udp; oletus on TCP |
command_succeeds | command | Poistumiskoodin on oltava nolla; timeout_seconds/timeout rajataan 1–1 800 sekuntiin |
command_output | command plus regex kentissä expected_pattern, pattern, expected, tai assertion-level expected | Vastaa stdoutia Python-regular-expression-semantiikalla |
network_reachable | host | count oletus 3; käyttää ICMP ping |
http_responds | url | status oletus 200 |
Esimerkki:
{
"type": "command_output",
"description": "Application reports the expected release",
"params": {
"command": "/opt/acme/bin/acme --version",
"expected_pattern": "^acme 2\\.4\\.[0-9]+$"
}
}Komento ja tallennettu tuloste voivat muodostua testitodisteeksi. Älä upota salaisuuksia.
GUI-väitteet
GUI-tarkistukset riippuvat toimivasta näyttöistunnosta sekä runnerin kuvakaappaus- tai syöttöapureista. Ne ovat ympäristöherkempiä kuin guest-komentotarkistukset.
| Tyyppi | Pääparametrit | Mitä tarkistetaan |
|---|---|---|
gui_application_opens | application (kanoninen); handler hyväksyy myös käynnistyskohtaiset asetukset | Käynnistää sovelluksen ja etsii ikkunan |
gui_window_visible | ikkunan otsikko- tai vastaavuusparametrit, joita handler käyttää | Etsii olemassa olevaa ikkunaa |
gui_execute_command | command | Suorittaa työpöytäkomennon; voi ottaa kuvakaappauksen |
gui_application_process | process_name | Etsii prosessia headless-varavaihtoehtona |
gui_screenshot_matches | reference_id; valinnainen threshold, crop/mask-alueet | Vertaa nykyistä kuvakaappausta tallennettuun referenssiin |
gui_wallpaper_matches | wallpaper_path; valinnaiset kynnykset ja alueet | Tarkistaa määritetyn taustakuvan polun ja visuaalisen tuloksen |
desktop_wallpaper_matches | wallpaper_path | Ajaa tiukemman desktop-taustakuvan provenance/configuration/visual-tarkistuksen |
gui_click_element | x, y | Lähettää koordinaattipohjaista osoitinsyöttöä |
gui_form_fill | fields | Täyttää koordinaateilla kuvatut lomakekentät |
gui_text_visible | text, contains, tai ocr_contains | Käyttää OCR:ää näytöllä tai valitulla alueella |
Executor hyväksyy myös yhteensopivuusaliaksia joillekin OCR- ja taustakuvatyypeille. Suosi uusissa recipes yllä olevia kanonisia nimiä. Koordinaattitestit ovat resoluutioherkkiä; käytä OCR:ää tai tulostarkistuksia mahdollisuuksien mukaan.
Benchmark-tarkistukset ovat erillinen muoto
cis_benchmark esiintyy reseptin historiallisessa assertion-sanastossa, mutta
tavallisella assertion-dispatcherilla ei ole cis_benchmark-handleria. CIS ja
muut benchmark-tarkistukset toimitetaan benchmark-tietueina, joissa on audit_script,
ja ne ajetaan benchmark-runnerin kautta. Käytä
CIS benchmark -työnkulkua, älä custom assertionia, jossa
type: "cis_benchmark".
Tuloksen tulkinta
- Puuttuvat pakolliset tiedot antavat
error, tai suunnittelija voi pudottaa väitteen varoituksella ennen suoritusta. - Käyttämätön
on_vm-kohde antaaskipped. - Epäosuva tulos antaa
failed. - Vain
passedon myöntävä todiste kyseiselle väitteelle.
Katso Custom assertions ohjeita kirjoittamiseen.