Python テスト演算子における Junos Snapshot Administrator について
Python(jsnapy)のJunos Snapshot Administratorを使用すると、Junos OSを実行しているネットワークデバイスのランタイム環境のスナップショットをキャプチャして監査できます。構成ファイルは jsnapy
、スナップショットのスコープを定義し、単一のスナップショットまたは 2 つのスナップショットの比較に使用するテスト ファイルを指定します。このオプションは --snapcheck
、単一のスナップショットを取得して結果を評価し、2 --check
つの異なるスナップショットの結果を比較します。テスト ファイル内で、Junos デバイスで実行するコマンド、起動する XPath、オプションの id 値、コマンド出力に対して実行するテストを指定します。テスト ケースでは、テスト演算子を使用して、1 つのスナップショット内のデータ要素を評価するか、2 つの異なるスナップショット内のデータ要素を比較します。
Jsnapyは、存在、等価、不等式、サイズ、および特定の範囲またはリストへの包含または除外をテストする多数の関係演算子を提供します。特定の演算子は、文字列、数値、XML 要素など、さまざまなオペランド型で動作します。テスト ケースは、実行するチェックの種類に関連するテスト演算子を使用して構築する必要があります。使用可能な演算子のリストについては、 Python テスト演算子の概要の Junos Snapshot Administrator を参照してください。
Python の Junos Snapshot Administrator は、いくつかのテスト演算子 、 、 、list-no-less
list-no-more
および no-diff
を使用して、delta
2 つの異なるスナップショット内の要素または要素値を比較します。これらのテスト演算子を使用したテストケースは、 オプションを使用すると--check
実行されます。1 つのコレクションに固有のオプションを使用すると--snapcheck
、これらのテスト演算子を使用するテスト ケースは事実上無視されます。Python の Junos Snapshot Administrator は、以下のサンプル出力に示すように、テスト ケースが無視されるとメッセージを出力します。
--------------------------------------------------------------------------- CHECKING SECTION: ospf-checks --------------------------------------------------------------------------- INFO: snapcheck mode: skipping test: list-not-less INFO: snapcheck mode: skipping test: no-diff + TEST PASSED: All OSPF neighbors are up + TEST PASSED: OSPF neighbors must have the same priority value INFO: snapcheck mode: skipping test: no-diff