TPTP(Test and Performance Tools)はEclipse環境においてテストを総合的に支援するテスティングフレームワークです。具体的には、以下の4つのプロジェクトが提供する機能によって構成されています。
No. | プロジェクト名 | 説明 |
---|---|---|
1 | TPTP Platform | TPTPのプロジェクトにおける共通インフラ機能 |
2 | Monitoring Tools | モニタリングやログ解析の機能 |
3 | Testing Tools | テストの編集・実行などの機能 |
4 | Tracing and Profiling Tools | トレースやプロファイル機能 |
表1 Eclipse TPTPを構成するプロジェクト一覧 |
プロジェクト一覧からも分かりますが、TPTPを利用することで単体テスト、結合テスト、性能テストなどにおいて同じGUIインターフェイスを通したテストを実現することができます。このため、いくつかの異なるテストツールを複合的に使用するよりも、テストの効率化が容易であるといったところが優れているツールです。
TPTPは、さまざまなテスト機能を提供していますが、その中でも今回は「Testing Tools」プロジェクトが提供するJUnitテストコードの作成・実行に注目しながら解説していきます。
TPTPによるJUnitテストコードの作成・実行における特徴は以下になります。
・GUIエディタでのテストスイートの編集・管理
テストエディタと呼ばれるGUIエディタを通してテストクラスおよびテストスイートの編集・管理が可能です。TPTPを利用したテストコードの生成では、テストコードを実行するために必要となるリソースや実行環境、配備などについて定義したテスト資材を作成する必要があります。テストエディタを使用することで、これらのテスト資材を簡単に作成することができます。
・テスト結果をHTMLレポートとして出力
TPTPはテスト結果をテストログファイルとして作成します。このテストログファイルを基に、テスト結果の統計を作成し、HTMLレポートとして出力する機能が提供されています。
・リモートホストでのテスト実行
TPTPは後述するエージェントコントローラをテストの実行環境とするため、ローカルホスト上でのテストだけでなく、エージェントコントローラが起動しているリモートホストでのテスト実行を簡単に行うことができます。
・DataPoolによるテストデータの管理が可能
TPTPはテストデータを管理するDataPoolという機能を提供します。DataPool機能はテストデータの管理をDataPoolのGUIエディタか、記号CSVファイルを用いて行うことができます。これによりテストコードを変更せずにテストデータを編集することが可能になります。
TPTPを利用するには、下表に示したプラグインと、エージェントコントローラが必要となります。
名称 | ファイル名 |
---|---|
TPTPランタイム4.1.0.1 | tptp.runtime-TPTP-4.1.0.1.zip |
エージェントコントローラ | tptpdc.win_ia32-TPTP-4.1.0.1.zip |
EMF2.1.0 | emf-sdo-SDK-2.1.0.zip |
XSD2.1.0 | xsd-SDK-2.1.0.zip |
表2 Eclipse TPTP実行に必要なプラグイン&ソフトウェア一覧 |
TPTPランタイム、EMF、およびXSDプラグインのインストールは、Eclipseのアップデート機能を用いたインストールを行います。
・エージェントコントローラのインストール
下記のサイトから各OSに合わせたアーカイブファイルをダウンロードします。
今回は、Windows環境のインストールについて説明します。
1.アーカイブファイルの展開とWindows環境変数RASERVER_HOMEの設定
ダウンロードしたアーカイブファイルを任意の場所に展開し、フォルダ内のwin_ia32がある場所をWindows環境変数RASERVER_HOMEとして定義します。
(例:RASERVER_HOME=C:\tptpdc\win_ia32)。
2.serviceconfig.xmlの作成
コマンドプロンプトを起動し、%RASERVER_HOME%\binフォルダへ移動した後、SetConfig.batを実行します。
以下の設定を対話形式で進めていきます。
今回説明するTPTPのJUnitテストの作成においては、すべてデフォルト設定(すべての設定において[Enter]ボタンを入力)としてください。
上記の操作が終了すると、%RASERVER_HOME%\configフォルダにserviceconfig.xmlが作成されます。
3.%RASERVER_HOME%binフォルダをWindowsの環境変数PATHに追加
エージェントコントローラを起動できるようにWindows環境変数PATHに%RASERVER%\binを追加します。
4.エージェントコントローラをWindowsサービスに追加(任意)
毎回手動でエージェントコントローラを起動したくない場合には、コマンドプロンプトから以下のコマンドを入力し、Windowsサービスとして登録します。
C:\>managerservice add “TPTP Agent Controller” %RASERVER_HOME%
正しく登録されたことを確認するには、[コントロールパネル]→[管理ツール]→[サービス]から確認を行ってください。
TPTPを用いたJUnitテストコードの作成は、以下の手順にて行います。
[作成手順]
1.テストスイートファイルの作成とテストコードの生成
2.テスト実行
2.1 ローカルホストでのテスト実行
2.2 リモートホストでのテスト実行(テスト資材(Artifact、Location、Deployment)の作成)
3.テスト結果の確認
・テストスイートファイルの作成とテストコードの生成テストスイートファイルの作成とテストコードの生成
[ファイル]メニューの[その他]を選択して、ウィザード選択画面を開き、[Test]フォルダ配下の[TPTP JUnit Test]を選択し[次へ]ボタンを選択します。テストスイートの作成ウィザードが表示されるので、以下の順で入力を行います。
以上の入力が完了すると、図1に示すテストスイート編集エディタが表示されます。ここで入力した内容が正しいかどうか再度確認してください。
次に図1のテストスイート編集画面にある[Test Methods]タブを押下して、テストメソッドを作成します。図2で示した[Add]ボタンを押下し、テストメソッドを作成してください。
最後に図1のテストスイート編集画面にある[Behavior]タブを押下して、テストの実行順序を指定します。画面中の[Add]ボタン、または[Insert]ボタンを押下すると、[invocation]と[loop]の選択を求められます。invocationはテストメソッドを指定する場合に使用します。loopは繰り返したいテストメソッドの呼び出しを指定する場合に使用します。
上記まで完了したら[ウィンドウ]→[パースペクティブを開く]→[その他]から[Test]を選択し、テストパースペクティブを表示します。表示したテストパースペクティブの画面左上に表示されるTest Navigatorにおいて、テスト実行ファイルを右クリックし、コンテキストメニューの[Open Source Code]を選択します。テストコードが表示されるので、テストメソッドの内容を定義します。
・テスト実行
TPTP JUnitテストを実行するには、ローカルホスト上でのテスト実行とリモートホスト上での実行のどちらかを選択します。リモートホスト上でのテスト実行の場合には、エージェントコントローラを介してテストを実行するために必要なテスト資材(Artificate、location、Deployment)の作成が必要です。リモートホスト上でのテストの実行方法については、TPTPのマニュアルを参照ください。
今回はローカルホスト上でのテスト実行について説明します。ローカルホスト上でのテスト実行では、テストパースペクティブの画面左上に表示されるTest Navigatorにおいて、テスト実行ファイルを選択した状態で、右クリックを行い、コンテキストメニューの[実行]→[Test]を選択し、テストを実行します。テスト実行結果は拡張子に.executionが付いたファイルとして生成されます。Test Navigator上では図4のように表示されます。
・テスト結果の確認
複数のテスト実行ログを基に、テストの実行結果の統計をHTMLレポートとして作成することができます。Test Navigatorにおいて、テスト実行ファイルを選択した状態で、右クリックを行い、コンテキストメニューの[Report]を選択します。New Reportという名前のダイアログが表示されるので、[Test Pass Report]を選択し、以下の設定を入力します。
すると、図5のようなテスト実行結果レポートを作成します。
Copyright © ITmedia, Inc. All Rights Reserved.