このセクションでは、Parasoft のビルトイン トランスポートおよびビルトイン メッセージ形式を拡張する基本手順を説明します。
このセクションの内容:
拡張の追加
以下の手順で、チームが作業するすべてのメッセージ形式およびトランスポートにサポートを追加できます。すべての拡張作業には Java を使用します。
- Java プロジェクトのクラスパスに、<INSTALL>/plugins/com.parasoft.ptest.libs.web_<VERSION>/root/ ディレクトリにある com.parasoft.api.jar ファイルを追加します。クラスパスに .jar ファイルがすでに追加された、新しい Java プロジェクトを作成することもできます。
- [ファイル] > [新規] > [プロジェクト] を選択します。
SOAtest または Virtualize> Custom Development> SOAtest または VirtualizeJava プロジェクトを選択します。
- 適切なインターフェイスを実装します。適切なインターフェイスを実装するための詳細については、次のセクションを参照してください:
Java プロジェクトのデフォルト パッケージに parasoft-extension.xml ファイルを作成し、追加するアイテムに応じて構成します。
- 1 つの Java プロジェクトに 1 つの parasoft-extension.xml file ファイルを作成してください。
一度に複数の拡張を追加するには、追加するすべての拡張のために 1 つの parasoft-extension.xml を作成し、最上位レベルの要素として
<extensions>
を使用します。詳細については「Adding Multiple Extensions at Once」を参照してください。SOAtest/Virtualize はデフォルト パッケージ配下のクラスパスに parasoft-extension.xml ファイルがないか探します。そのため、それぞれの parasoft-extension.xml ファイルは、それぞれが存在するディレクトリ (またはそれぞれが含まれる JAR ファイル ) をシステム プロパティ設定のクラスパスに設置する必要があります。このファイルを指定のタイプの拡張機能に応じて設定する方法については、次のセクションを参照してください:
カスタム メッセージ形式用に parasoft-extension.xml を定義
カスタム リスナー用に parasoft-extension.xml を定義
カスタム ツール用に parasoft-extension.xml を定義
このファイルを指定のタイプの拡張機能に応じて設定する方法については、次のセクションを参照してください:
カスタム トランスポート用に parasoft-extension.xml を定義
- Java プロジェクトをビルドし、 SOAtest システム プロパティのクラスパス エリアに次のいずれかとして追加します: JAR ファイル、 SOAtest/Virtualize ワークスペース内の Jave プロジェクト、またはクラス フォルダー。
SOAtest/Virtualize を再起動し、適切な箇所に拡張機能が表示されているかを確認します。
詳細については、次のセクションを参照してください:
詳細については、次のセクションを参照してください:
一度に複数の拡張を追加
チームでいくつもの拡張を使用している場合、一度に複数の拡張を追加する場合があるかもしれません。たとえば、すべてのカスタム メッセージ形式、カスタム トランスポート、およびメッセージ リスナーを含むバンドルを追加する場合などです。
一度に複数の拡張を追加するには、次の操作を行います。
- 拡張ごとに複数の parasoft-extension.xml ファイルを作成するのではなく、プロジェクト内に 1 つだけ parasoft-extension.xml ファイルを作成し、そこにすべての拡張を記述します。最上位レベルの XML 要素として
<extensions>
を使用し、この最上位要素の子として個別のカスタム拡張を定義します。 - すべての拡張を Java プロジェクトにインクルードし、ビルドしてから、(前のセクションの手順 4 に従って) 結果の Jar ファイル、Java プロジェクト、またはクラス フォルダーをシステム プロパティのクラスパスに追加します。
たとえば、1 つの拡張の parasoft-extension.xml ファイルは、次のようになります。
<?xml version="1.0" encoding="UTF-8"?> <extension xmlns="urn:com/parasoft/extensibility-framework/v1/extension" type="tool" name='the name of your tool, appears in menus' description='A more detailed description'> <class>com.myCompany.MyTool</class> <!-- implements ICustomTool --> <version id='your version ID' updaterClass="com.myCompany.myUpdater"/> <tool xmlns="http://schemas.parasoft.com/extensibility-framework/v1/tool" ... </extension>
複数の拡張があるプロジェクトでは、parasoft-extension.xml ファイルは次のようになります。
<?xml version="1.0" encoding="UTF-8"?> <extensions xmlns="urn:com/parasoft/extensibility-framework/v1/extension"> <extension type="tool" name='the name of your tool, appears in menus' description='A more detailed description'> <class>com.myCompany.MyTool</class> <!-- implements ICustomTool --> <version id='your version ID' updaterClass="com.myCompany.myUpdater" /> <tool xmlns="http://schemas.parasoft.com/extensibility-framework/v1/tool"> ... </tool> ... </extension> <extension type="transport" name='The name of your transport, appears in the transports menu' description='A more detailed description'> <class>com.mycompany.MyTransport</class> <!-- implements ICustomTransport --> <form xmlns="urn:com/parasoft/extensibility-framework/gui"> <!-- This describes the fields you wish to appear in your transport GUI --> <section label="field group 1"> <field id="key 1" label="field 1"/> ... <field id="key n" label="field n"/> </section> </form> </extension> ... <extension> ... </extension> </extensions>
API ドキュメント
拡張フレームワークの API ドキュメントを参照するには、 [Parasoft] > [ヘルプ目次] をクリックして 『Parasoft SOAtest Extensibility API』を開きます。
その他の考慮事項
カスタム拡張機能は、 com.parasoft.api.jar 以外の Java ライブラリに依存することがあります。 SOAtest での詳細については、「外部依存の構成」を参照してください。Virtualize での詳細については、「外部依存の設定」を参照してください。
多言語に対応するために、GUI に表示される文字列を多言語化できます。 SOAtest での詳細については、「GUI テキストのローカライズ」を参照してください。Virtualize での詳細については、「GUI テキストのローカライズ」を参照してください。
既存の拡張機能を使用していて、後でその拡張機能の新しいバージョンを異なる GUI オプション セットで作成する場合、Version Updater を使用します。Version Updater は、保存された .tst ファイル (SOAtest) または .pva/.pvn ファイル (Virtualize) をアップデートし、新しいオプション セットに適応させます。 SOAtest アーティファクトの更新の詳細については、「新バージョンのための GUI フィールドのアップデート」を参照してください。Virtualize アーティファクトの更新の詳細については、「GUI フィールドのアップデート」を参照してください。