はじめに
Introspect ESP ソフトウェア内で開発されたテスト手順に、外部の Python モジュールをインポートすると便利な場合があります。同様に、Introspect ESP ソフトウェアからテスト メソッドまたはテスト プロシージャ全体をエクスポートして、外部の Python スクリプトで使用すると便利な場合があります。この技術的洞察では、これら両方の要件を実現する方法について説明します。
テスト プロシージャへのモジュールのインポート
PythonModuleコンポーネントクラスを使用する
Introspect ESP ソフトウェアには、PythonModule というコンポーネント クラスが組み込まれてお り、Introspect ESP ソフトウェア内から実行されるテスト手順に外部の Python 関数やモジュールをイン ポートする方法として推奨されます。このセクションでは、このコンポーネント クラスの基本概念について説明し、実際の使用例 を示します。
PythonModuleコンポーネントは、[Add Component]メニューを使用してIntrospect ESPソ フトウェアのテスト手順に追加することで、インスタンス化することができます。このコンポーネント クラスは、次の画像に示すように、メニューの「ユーティリティ」カテゴリの下に表示される ことに注意してください。
PythonModuleコンポーネントがインスタンス化されると、Introspect ESP Softwareはいくつかの自動アクションを実行します。まず、他のすべてのインスタンス化されたコンポーネントと同様に、Componentsタブにモジュー ルが追加されます。次に、WindowsのTest ProcedureフォルダのParamsサブフォルダ内に空の.pyファイルが作成されま す。このファイルの名前は、インスタンス化されたコンポーネントクラスの名前と一致します。つまり、次の2つの画像を参照すると、ソフトウェアはpythonModule1というモジュールを作成し、pythonModule1.pyという対応するファイルを作成します。
デフォルトでは、pythonModule1.pyファイルは空白で、Introspect ESPソフトウェアは通常、コードエディタを起動し、ユーザーがこのファイルを編集できるようにします。このとき、外部コードを追加することができます。次の例では、2つの関数宣言を示します。1つはカスタムprintメソッドを作成するため、もう1つはフィボナッチ数列を計算するためのものです。見てわかるように、関数宣言、関数呼び出し、ライブラリのインポートを含め、あらゆるPythonコードをこのファイルに配置することができます。
pythonModule1.pyファイルを保存したら、Introspect ESPソフトウェアに戻り、もうソースコードについて心配する必要はありません。代わりに、メイン テスト プロシージャ ペインに pythonModule1.run() の呼び出しを追加して、ファイルの内容をインポートします。この方法でファイルをインポートすると、その中で宣言された任意の関数を呼び出すことができます。例えば、次の画像は、上記の例で宣言されたフィボナッチ級数計算機を呼び出す方法を示しています。その次の画像は、テストプロシージャの実行ログで、外部のPythonファイルが確かにインポートされ、フィボナッチ級数関数が実行されたことを確認しています。
params フォルダに python ファイルを配置する
既存のPythonファイルの内容を空白のファイルに貼り付けることなくインポートしたい場合、このファイルをターゲットのIntrospect ESP SoftwareフォルダのParamsサブフォルダに配置するだけです。このようにすると、Introspect ESPソフトウェアでPythonModuleコンポーネント クラスのインス タンスが自動的に作成されます。次の例では、次のイメージに示すように、mySecondPythonModule.pyというファイルをParamsフォルダに配置します。
このファイル自体には1行しかなく、これは組み込みのPython uuidライブラリのインポート呼び出しで、ここでは例証のためだけに含まれています。
Introspect ESP SoftwareでTest Procedureを開くと、以下の画像のようにPythonModuleクラスが自動的にインスタンス化されていることが確認できます。
次に、このモジュールをテスト手順ペインで使用する手順を説明します。具体的には、先ほどと同様に mySecondPythonModule.run() メソッドを実行して、このモジュールをインポートします。そして、インポートしたuuidライブラリ内の任意の組み込み関数を使用できるようになります。次の例では、これを使用して一意のユーザーIDを作成し、このIDをログウィンドウに出力しています。
上記のテスト手順を実行した結果は、次の画像のようになります。このように、テストプロシージャーのウィンドウを乱すことなく、Pythonモジュールが正常にインポートされていることが確認できます。
Pythonファイルを手動でインポートする
PythonModule クラスとは別に、Introspect ESP ソフトウェア内で作成されたテスト プロシージャにファイルを手動でインポートすることができます。これは、一般的な Python 言語構造を使用して行われます。たとえば、次の画像は、テスト プロシージャ内から uuid ライブラリを直接インポートしている様子を示してい ます。
Introspect ESP ソフトウェアは、外部 Python ファイルのために次のパスを自動的に検索することに注 意してください。
<User Account>\Documents\Introspect\PythonCode
このディレクトリに保存されているファイルは、次の呼び出しを使用して簡単にインポートできます。
import fileName
テスト手順をエクスポートする
TestAsPythonScriptコンポーネントクラスの使用法
Introspect ESPソフトウェアには、TestAsPythonScriptというコンポーネントクラスが組み込まれています。これは、Introspect ESPソフトウェア内で開発したアルゴリズムを、外部のPythonスクリプトで使用するためにエクスポートできる、自動コード生成ユーティリティです。このツールの利点は、フォームファクタの初期化、コンポーネントコンテキストの作成、ハードウェ アへの接続を自動的に行うことです。このセクションでは、このコンポーネント クラスの基本概念について説明します。
TestAsPythonScriptコンポーネントは、Introspect ESPソフトウェアテスト手順に「Add Component」メニューを使用して追加することにより、インスタンス化することができます。このコンポーネント クラスは、次の画像に示すように、メニューの「ユーティリティ」カテゴリにリストされているこ とに注意してください。
注: TestAsPythonScript は、Introspect ESP ソフトウェアのバージョン 3.6.79 で導入され、それ以前のリリースでは使用できません。
TestAsPythonScript コンポーネントのインスタンスを作成すると、他のコンポーネント クラスと同様に Components ペインに追加されます。しかし、他のコンポーネント クラスとは異なり、このクラスには呼び出し可能なメソッドはありません。そのため、以下のスクリーンショットのように、Test Procedure ペインが変更されることはありません。その代わり、Introspect ESP ソフトウェアは testAsPythonScript1 コンポーネントの存在をトリガーとして、外部スクリプトで使用可能な出力 Python ファイルを保存します。この出力ファイルは、ソフトウェア内で編集されたテスト手順を正確に表現したものです。
上記のテスト手順に対して自動生成されたコードは次ページのとおりです。このように、Introspectコンポーネントの外部インスタンス化のすべての側面が自動的に処理されます。
コンポーネントクラスを手動でエクスポートする
Introspect ESPのコンポーネントクラスは、アプリケーションノートの説明に従って、外部のPythonスクリプトでインスタンス化することができます。
UsingComponentsInExternalPythonScripts.pdf に記載されている手順に従って、外部Pythonスクリプトでコンポーネントクラスをインスタンス化できます。
このアプリケーションノートは、Introspect ESP インストールの Doc フォルダに含まれています。
結論
Introspect ESPソフトウェアには、PythonModuleとTestAsPythonScriptというコンポーネントが組み込まれており、ユーザーは、テスト手順に外部のPython関数やモジュールを簡単にインポートし、外部で使用するスクリプトをエクスポートすることができるという利点を持っています。このソフトウェアは、多くのエンジニアのテスト手順における有効性を高め、数々の賞を受賞しています。Introspect ESPソフトウェアの詳細については、こちらをクリックしてください。