マウスを使わないJUnitテスト(後半)
テストの中身を埋める
ここで、Calcクラスをインスタンス化しましたが、それを受け取る変数がありません。ここでまた、[Ctrl]+1です。テスト対象は普通テストケースクラスのフィールドとして定義します。よって、ここでは[ステートメントを新規フィールドに割り当てる]を選びましょう。
package hello; import junit.framework.TestCase; public class CalcTest extends TestCase { private Calc calc; public void testAdd() throws Exception { calc = new Calc(); } }
後は、メソッドが正しく動いていることを確認するためのアサート文を追加しましょう。
public void testAdd() throws Exception { calc = new Calc(); assertEquals("3足す2は5になるはず", 5, calc.add(3,2)); }
ここでも、add(int,int)というメソッドがないため、コンパイルエラーになります。クイックフィックスでメソッドも自動生成してください。自動生成されたメソッドはメソッド名、モディファイア、返却値、引数がそれぞれハイライトされている状態になっており、それぞれのハイライトは[Tab]で移動できます。引数と返却値とをそれぞれint型を受け取るように修正しましょう。また、簡単なメソッドなので実装も済ませてしまいましょう。
package hello; public class Calc { public int add(int i, int j) { // TODO 自動生成されたメソッド・スタブ return i + j; } }
さて、ここでまた「CalcTest.java」にフォーカスを移すこととします。ここでは[Alt]+←を押してもうまく「CalcTest.java」に移動しないことと思います。これは、メソッドを作るときにハイライトを[Tab]で移動したため、余計な選択情報が記憶されてしまったためです。こんなときは、[Ctrl]+[F6]でエディタを選択して移動しましょう。
- フィールドの作成と割り当て([Ctrl]+1)
assertEqualsの入力- メソッドの作成([Ctrl]+1)
- メソッドの編集
- 「CalcTest.java」へ移動([Ctrl]+[F6])
テストを実行する
とりあえずひとつだけですが、テストケースの実装が終わりました。早速テストを動かしてみましょう。HelloWorldを実行したように、「何かを実行する」場合は[Alt]+[Shift]+Xです。ここでは、JUnitテストとして動かすため、Tを押してください。アクティブなエディタがJUnitテストとして実行されます。


