Skip to Content
Referenceアサーションの種類

アサーションの種類

プロビジョニングされたテスト VM 内で実行されるアサーションの正規リファレンス。 特に明記されていない限り、ターゲットは primary です。それぞれの主張には人間も必要です 読み取り可能なdescription

安定したゲスト アサーション

タイプ必須 paramsオプションの動作
user_existsusernameid を実行します
user_passwordusernameロックされていないパスワード ハッシュが存在することを確認します。対話型ログインは試行されません。
user_in_groupusernamegroupsudo/admin をチェックするときに、Vyatta の管理上の同等の機能を受け入れます。
file_existspathファイルまたはディレクトリを受け入れます
file_containspathpattern、または contentgrep を使用します。値は grep パターンであり、リテラルのみの比較ではありません。
file_permissionspathmodestat によって報告された 8 進数モードを比較します。
service_runningservicesystemd のアクティブ状態をチェックします。小さなクロスディストリビューションエイリアスセットを知っています
service_enabledservicesystemd の有効化をチェックする
package_installedpackageゲストのサポートされているパッケージ マネージャー データベースを確認します。
port_listeningportprotocoltcp または udp の場合があります。デフォルトは TCP
command_succeedscommand終了コードはゼロでなければなりません。 timeout_seconds/timeout は 1 ~ 1,800 秒に固定されています。
command_outputcommandexpected_patternpatternexpected、またはアサーション レベルの expected の正規表現。 stdout を Python 正規表現セマンティクスと照合します。
network_reachablehostcount のデフォルトは 3 です。 ICMP ping を使用します。
http_respondsurlstatus のデフォルトは 200

例:

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

コマンドとキャプチャされた出力はテストの証拠になる可能性があります。秘密を埋め込まないでください。

GUI アサーション

GUI チェックは、動作中のディスプレイ セッションとランナーのスクリーンショット、または 入力ヘルパー。これらはゲスト コマンド チェックよりも環境に依存します。

タイプ主なパラメータチェック内容
gui_application_opensapplication (正規);ハンドラーは起動固有のオプションも受け入れます。アプリケーションを起動し、ウィンドウを探します。
gui_window_visiblewindow-title またはハンドラーによって使用される一致するパラメーター既存のウィンドウを探します
gui_execute_commandcommandデスクトップコマンドを実行します。スクリーンショットをキャプチャできます
gui_application_processprocess_nameプロセスをヘッドレス フォールバックとして探します。
gui_screenshot_matchesreference_id;オプションの threshold、トリミング/マスク領域現在のスクリーンショットを保存された参照と比較します。
gui_wallpaper_matcheswallpaper_path;オプションのしきい値と領域設定された壁紙のパスと視覚的な結果を確認します。
desktop_wallpaper_matcheswallpaper_pathより厳密なデスクトップの壁紙の出所/構成/視覚的チェックを実行します。
gui_click_elementxy座標ベースのポインタ入力を送信します
gui_form_fillfields座標で記述されたフォーム入力を埋める
gui_text_visibletextcontains、または ocr_contains画面または選択した領域で OCR を使用します。

Executor は、一部の OCR および壁紙の互換性エイリアスも受け入れます。 タイプ。新しいレシピでは上記の正規名を優先してください。座標テストは、 解像度に依存します。可能な場合は OCR または結果チェックを使用します。

ベンチマーク チェックは別の形式です

cis_benchmark はレシピの歴史的なアサーション語彙に表示されますが、 通常のアサーション ディスパッチャーには cis_benchmark ハンドラーがありません。 CISと 他のベンチマーク チェックは、audit_script のベンチマーク レコードとして提供されます。 そしてベンチマークランナーを通じて実行します。を使用します。 CIS ベンチマーク ワークフロー、カスタム アサーションではありません type: "cis_benchmark"

結果の解釈

  • 必要なデータが欠落していると error が生成されるか、プランナーがアサーションを削除する可能性があります 実行前に警告が表示されます。
  • 使用できない on_vm ターゲットは skipped を生成します。
  • 一致しない結果は failed を生成します。
  • passed だけがその主張の肯定的な証拠です。

作成ガイダンスについては、カスタム アサーション を参照してください。