TestNG

Next Generation Java Testingを略して、TestNG。NGという名前から、No Goodをイメージしていまいますが、次世代と言う意味です。
Eclipse用のPlug-inがあり、Help -> Install New Software…からインストールします。”Work with”の所に “http://beust.com/eclipse”を入力して、表示される”TestNG”を選んでダイアログの指示に従って進んでいけばインストールできます。

SelectTestNG

サンプルとして、単純な足し算のプログラムに対して、リストを用いて引数に与える値を変えながらのテストと、擬似的な限界値を作って、Exception発生のテストを行いたいと思います。

まずは、コマンドライン用のmainをつくります。TestNGのテストだけであれば、mainは不要です。パッケージ名は、”add”とでもしておきましょう。”public static void main(String[] args)”にもチェックをいれます。

CreateAddmain

mainの方はまだ、編集せずに、テストで使うAddTargetクラスを作りましょう。

CreateAddTarget

Addクラスは至ってシンプルで、単純な二つの引数の可算結果を返すaddメソッドがあるだけです。

エクセプションのテストの為に、二つの引数のどちらかが99を超えると”AristhmeticeException”が発生するようになっています。

 

AddTarget

今回のテストでは関係無いのですが、メイン関数からの呼び出しは以下のようになります。AddMain

次にテストケースの追加です。その前に、テスト用のコードをいれる”test”のソースフォルダーを作っておきましょう。

CreateTestSource

では、testのフォルダーできたら、AddTargetのクラスを選んで、右クリックをおこないます。ポップアップメニューの下の方にあるTestNGのメニューの中の”Create TestNG class”を選びます。もし、TestNGのメニューが出ないのであれば、TestNGがインストールされていないと思われます。

CreateTestNGClass

“Create TestNG class”を選ぶと、テストを追加したいメソッドの選択ダイアログが表されます。今回は、一つだけなので一つしか出てきません。ここで、選ばなくてもあとで自分でコードを追加する場合は、なにも選ばずに進んで構いません。CreateTestNGClass2

テストクラスの出力先は”/TestNGTest/test”を指定し、パッケージ名は”add”、クラス名はAddTargetTestとでもしておきましょう。追加でアノテーションを選ぶとクラス作成時にメソッドを自動で作ってくれます。今回は何も選ばずに”Finish”を選びます。

CreateTestNGClass3

ダイアログでチェックしたので、addメソッドのテスト関数が作られています。addのメソッドの上にテスト関数をあらわすアノテーション”@Test”が書かれています。このままテストを実行すると、RuntimeExceptionが発生する状態になっていて、この部分をかきなおして、テストケースを追加します。

また、TestNGのライブラリーがまだ追加されていないので、TestNG関連のところがエラーとして表示されています。

AddTargetTestClassまず、import org.testng.annotaions.Testのところで右クリックをしてTestNGのライブラリーを追加します。

AddTestNGLibrary

テストクラスには、DataProviderを用いてテストケースを組み合わせたテスト、Excpetionを期待しているテストがあります。

AddTargetTest

実行すると、以下のような結果になります。なにかエラーがあると赤になります。

ExceuteTestNG

テスト環境:

OS:
Jave Version:
Eclipse Version:

ブックマーク へのパーマリンク.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です