このセクションの内容:

はじめに

JUnit Executor ツールを使用すると、SOAtest で実行できる他のさまざまな種類のテストと組み合わせて JUnit テストを実行できます。これにより、テスト環境やテスト データのセットアップ、このツールによる単体テストの実行、モバイル テストの実行など、より広範な一連のイベントの一部として JUnit テストを編成する単一のテスト シナリオを設計して実行することができます。

前提条件

  • JUnit 3.8.x および 4 がサポートされています。
  • このツールには SOAtest 9.8.1 以降が必要です

インストール

このツールは、UI またはコマンド ラインからインストールできます。

UI からのインストール

  1. [Parasoft ] > [設定] を選択し、[システム プロパティ] をクリックします。
  2. [JAR の追加] をクリックし、junitexecutor.jar ファイルを選択します。
  3. [適用] をクリックします。
  4. SOAtest/Virtualize を再起動します。

コマンドラインからのインストール

settings.properties ファイルの system.properties.classpath プロパティに junitexecutor.jar ファイルを追加します。例:

system.properties.classpath=<PATH_TO_JAR>/junitexecutor.jar 

使用方法

テストのクラス フォルダーまたは jar ファイルに、実行する JUnit が含まれている必要があります。その他の依存ライブラリを jar/フォルダーにインクルードしたり、システム プロパティに追加したりできます。ツールは、まず jar/folder をチェックし、必要に応じてシステム プロパティをチェックします。

ツールの追加

ウィザードを使用して、スタンドアロン ツールとして JUnit Executor を追加できます。

  1. テスト スイート フォルダーを右クリックし、[新規追加] > [テスト] をクリックします。 
  2. JUnit Executor ツールを参照し、[終了] をクリックします。
  3. シナリオに従ってツールを設定します。

特定のテストメソッドの実行

  1. テストのクラス フォルダーまたは jar ファイルを指定し、実行するテスト クラスおよびテスト メソッドを指定します。
  2. (オプション)このツールから JUnit の値を動的に変更する場合は、目的のキーと値のペアをセミコロンで区切って [データ] フィールドに入力します。

    これらの変数には、Java の System Properties オブジェクトを使用して JUnit ソース コード内からアクセスできます。例: 

    String lastName = System.getProperty("lastName")

クラス内のすべてのテスト メソッドの実行

  1. テストのクラス フォルダーまたは jar ファイルを指定し、テスト クラスを指定します。[メソッド] フィールドは空にします。
  2. (オプション)このツールから JUnit の値を動的に変更する場合は、目的のキーと値のペアをセミコロンで区切って [データ] フィールドに入力します。これらの変数には、Java の System Properties オブジェクトを使用して JUnit ソース コード内からアクセスできます。例:  

    String lastName = System.getProperty("lastName")

結果の参照

実行の詳細および結果については、[コンソール] ビューにレポートされます。また、テストの失敗が検出された場合、品質タスク ビューにレポートされます。

JUnit テストからコンソールへのメッセージのレポート

com.parasoft.api パッケージをプロジェクトにインポートしてアプリケーション コンテキストにアクセスすると、SOAtest が JUnit テスト実行からのメッセージをコンソールにレポートできるようになります。

Application.showMessage("this displays in the console");

  <SOATEST_INSTALL>/plugins/com.parasoft.ptest.libs.web_<VERSION>/root/ ディレクトリにある com.parasoft.api.jar ファイルを Java プロジェクトのクラスパスに追加して、リソースをインポートします。

JUnit テストからの値の取得

SOAtest の出力を JUnit Executor にアタッチして、JUnit のテスト出力からデータを取得し、そのデータを他のテストで使用することができます。保存する値を指定するよう JUnit を設定し、Executor ツールの JUnit Output に適切なツールを連結する必要があります。データは XML フォーマットで連結されたツールに渡されます。たとえば、Diff ツール、XML Assertor、または XML Data Bank ツールにデータを送信できます。

JUnit Output の設定

JUnit はアプリケーション コンテキストにアクセスし、custom_tool_junit_output キーの下にある標準的な Java Map に必要な値を格納する必要があります。JUnit Executor ツールは、保存されたマップのアプリケーション コンテキストをチェックし、ツールの "JUnit Output" 出力に渡される XML に変換します。マップのキーおよび値は文字列でなければなりません。

アプリケーション コンテキストにアクセスするには、「Reporting Messages from JUnit Test to Console」の説明に従って com.parasoft.api パッケージを JUnit にインポートします。

別のツールにデータを送信

XML データを処理するツールに JUnit テストの出力データを送るには、次の操作を行います。

  1. JUnit Executor を右クリックし、[出力の追加] をクリックします。
  2. 出力を受け取るツールを選択し、[終了] をクリックします。

この例では、multiplyResult および sumResult JUnit オペレーションの値を XML データバンクに保存し、その値を後続のテストで使用できるようにします。次の手順が実行されます。

  1. JUnit テストは、値を含むマップを作成します。
  2. マップはアプリケーション コンテキストに配置されます。
  3. マップ内の値は XML ドキュメントに変換され、JUnit の出力に接続されたツールに渡されます。
@Test
public void testExample() throws Exception {
  int multiplyResult = 8 * 8;
  int sumResult = 8 + 8;

// Create map representing name-value pairs for XML 
  Map<String, String> map = new HashMap<String, String>(); 
  map.put("multiplyResult", String.valueOf(multiplyResult)); 
  map.put("sumResult", String.valueOf(sumResult));

// Get the Parasoft Scripting Context
  ScriptingContext context = Application.getContext();

// Place the map in the context with the custom_tool_junit_output 
  context.put("custom_tool_junit_output", map);
  }

このテストを実行するように構成された JUnit Executor ツールを追加し、 XML Data Bank ツールを JUnit の出力に追加します。

どの値を抽出して他のツールで使用するかを指定します。マップのコンテンツは、JUnit の出力に添付されたツールに渡される XML ドキュメント内の <root> 要素の下に表示されます。この例では、値アサーション ツールが追加されました。

サード パーティのコンテンツ

このプラグインは、以下のサード パーティのコンテンツを含みます。

その他のライセンスの詳細については、Parasoft Burp Suite Extensions の licenses フォルダーを参照してください。


  • No labels