転載:https://www.cnblogs.com/huaxingtianxia/p/5563111.html
使用して基本的な単体テスト
まず、環境設定
ユニットテストのアイデアのIDEを使用して、最初のJUnitプラグインをインストールする必要があります。
ステップ1のJUnitプラグインをインストールします。
ファイル - >設定 - > Plguins - >リポジトリをブラウズ - >入力のJUnit - > JUnitのジェネレータV2.0のインストールを選択します。
2. JUnitのプラグインを使用します
クラスは、ユニットを試験するショートカットALT +挿入、選択JUnitテストを使用し、JUnit4を選択します。
第二に、テストユニット
コードデモ:
@Test 公共ボイドtestAdd(){ のassertEquals(2、新しいUserDao())(1、1を加えます。) }
1>注意:
図1は、上述した試験方法は@Testコメントを修正しなければなりません。
2、試験方法は、任意の引数を持つことができない、変更されます。public voidを使用する必要があります。
3、テストコードを格納するために使用される新しいソースコードディレクトリ。
図4は、試験パケットのクラスは、テストパッケージのタイプと一致しなければなりません。
図5に示すように、各試験ユニットの独立した試験方法は、各テストメソッド間の依存関係を持っていなければなりません。
図6は、テストクラスは、クラス名のサフィックス(非必須)として試験を使用します。
図7に示すように、メソッド名(非必須)などの接頭語試験を用いて試験方法。
2>エラー分析:
図1は、一般的に故障の決意に使用障害テストユニットアサーション方法は矛盾期待される結果とプログラムの実行結果を説明しました。
図2に示すように、異常によって引き起こされるエラーコードは、彼がテストコード自体に不具合を生じました。
3は、テストケースは、あなたが正しいことを証明するために、しかし、あなたは間違っていないことを証明するために使用されていません。
3>テストプロセス:
コードデモ:
@BeforeClass パブリック静的ボイドsetUpBeforeClass()例外{スロー } @AfterClass パブリック静的ボイドsetUpAfterClassを()例外{スロー } @Before (前公共ボイド)を例外{スロー } @After (後公共ボイド)が例外をスロー{ }
ロードするために、すべてのメソッドの前に実行するBeforeClass修正方法@ 1、、と彼は、クラスロードの静的メソッドの後に実行されます
設定ファイルをロードするための適切なメモリで唯一のインスタンス。
すべてのメソッドが終了した後に修正された方法が実行されるAfterClass @ 2は、リソースは、典型的には、例えば、接続を閉じ、洗浄のために使用されます。
3は、@の前と@Afterの実行は、各テストメソッドの前に一度だけ実行されます。
4>共通アノテーション
(= XX.class除く)1、@テストは、実行時に例外を無視します。
プログラムを実行するための時間を許容するために、テスト(タイムアウト= MS)2、。
図3は、@修飾方法はテスターを無視さ無視します。
4、RunWithは、テストランナーを変更することができますorg.junit.runner.Runner
5>テストスイート
テストスイートは、組織のテストクラスを実行するためのテストクラスです。次のように:
コードデモ:
@RunWith(Suite.class) Suite.SuiteClasses({UserTest1、UserTest2、UserTest3})@ パブリッククラスSuiteTest { }
注意事項:
図1は、テストスイートクラスの入口として、クラスは、任意の方法を含んではなりません。
2、テストランナーSuite.classを変更します。
図3に示すように、試験は、アレイ内のクラスSuite.SuiteClasses({})に実行されます。
6>パラメータ
唯一のテスト・データを変更する必要がある、唯一のテストデータをテストする必要があるとコードの構造は同じです。
コードデモ:
@RunWith(Parameterized.class) パブリッククラスparameterTest { 0 =期待されるintです。 int型INPUT1 = 0; int型INPUT2 = 0; @Parameters パブリック静的コレクション<OBJECT []> T(){ は、Arrays.asListを返す(新しいオブジェクト[] [] { {3,1,2}、 {5,2,3} })。 } 公共parameterTest(予想INT、INT INPUT1、INT INPUT2){ this.expected =期待されます。 this.input1 = INPUT1。 this.input2 = INPUT2。 } @Test 公共ボイドtestAdd(){ のassertEquals(期待UserDao.add(INPUT1、INPUT2))。 } }
具体的な手順:
1、@RunWith(Parameterized.class)のデフォルトのテストランナーを変更します。
図2は、期待値とテスト値を格納する変数を宣言する。
3.コレクションは、パブリック静的メソッドの戻り値を宣言し、@Parametersによって変更します。
図4は、テストクラスとしてパラメータを持つpublicコンストラクタを宣言し、その中で変数を宣言するために彼を割り当てました。
上記単位テストに基づいているのIntelliJ IDEAを行います。