私は、Javaのシリーズを愛し--- [Spring統合のJUnitの:春のテスト]

目的:

テストクラスでは、各々の試験方法は、次の2行のコードを有します。

 

ApplicationContextのAC =新ClassPathXmlApplicationContext( "bean.xml");

IAccountService AccountServiceの= ac.getBean( "AccountServiceの"、IAccountService.class)。

 

アクションのこの2行は、あなたがそれを書いていない場合、あなたは直接nullポインタ例外を求めるプロンプトが表示されます、コンテナを得ることです。だから、簡単に削除することはできません。

そのため、使用pom.xmlファイルのインポート依存のスプリングテスト、二つの言葉は、私たちの後の呼び出しを容易にするため、春にフレームにカプセル化することができます。

ステップ:

pom.xmlファイル1.インポートスプリング・コンテキスト。

  <! - Springフレームワーク- > 
    < 依存> 
    < groupIdを> org.springframework </ groupIdを> 
    < たartifactId >春コンテキスト</ たartifactId > 
    < バージョン> 5.0.2.RELEASE </ バージョン> spring-とバージョンへのこだわり同じテストのバージョン
   </ 依存関係>

 

pom.xmlファイル2.インポートのJUnit。

 

    < 依存> 
      < groupIdを> JUnitの</ groupIdを> 
      < たartifactId > JUnitの</ たartifactId > 
      < バージョン> 4.12 </ バージョン> <! - ここspring5と上記の要件は、バージョン4.12とJUnitでなければならないことに留意すべきです、またはそれはとりません- > 
      < スコープ>テスト</ スコープ> 
    </ 依存関係>

 

 

 

 

3.インポートスプリング集積JUnitは座標----スプリングテストをpom.xmlファイルに。

 

< 依存性> 
 < のgroupId > org.springframework </ のgroupId > 
 < たartifactId >春試験</ たartifactId > 
 < バージョン> 5.0.2.RELEASE </ > ばねコンテキスト、一貫性のないエラーのバージョンと一致するようにバージョンに注意してください。
 </ 依存関係>

 

4.既存の注釈がランナー置き換え@RunWith

 

/ ** 
*テストクラス
* @author 若年包囲ライオン
* @Version 1.0 
* / 
@RunWith(SpringJUnit4ClassRunner。クラスパブリック クラスAccountServiceTest { 
}

 

5. Spring構成ファイルの場所を指定@ContextConfiguration

 

/ ** 
*テストクラス
* @author 若年包囲ライオン
* @Version 1.0 
* / 
@RunWith(SpringJUnit4ClassRunner。クラス
@ContextConfiguration(位置 = { "CLASSPATH:bean.xml" })
 パブリック クラスAccountServiceTest { 
} 
@ContextConfiguration注:
場所は属性:設定ファイルの場所を指定します。ショー:パスがクラスである場合は、クラスパス必要

なクラスのプロパティを:注釈は、クラスを指定します。使用しないで、このプロパティが必要なクラスのアノテーション形式の位置を指定するXML構成:@ContextConfig(クラス= Config.class)。

 

クラス変数に6 @Autowired噴射テストデータ

 

/ ** 
*テストクラス
* @author 若年包囲ライオン
* @Version 1.0 
* / 
@RunWith(SpringJUnit4ClassRunner。クラス
@ContextConfiguration(位置 = { "CLASSPATH:bean.xml" })
 パブリック クラスAccountServiceTest { 
@Autowired 
プライベートIAccountService AS ; 
}

 

質問:なぜテストクラスは、XMLに割り当てられていませんか?

 

この問題を説明する前に、XMLに割り当てられた最初のリフトみんなの懸念は、それを使用することはできませんか?
その答えは、イエス問題ありません、あなたが使用することができます。
なぜ道を構成するためにXMLを使用していませんか?
その理由はこれです:
最初に:私たちはXMLでBeanを構成し、コンテナを作成するためのスプリング荷重の設定ファイルは、オブジェクトを作成します。
第二:我々は単にテスト関数でクラスをテストし、それがプロジェクトのプログラムロジックに参加していない、それは依頼する必要があり解決することはできません
質問、そう作成し、それを使用しませんでした。その後、コンテナはリソースの無駄になりますがあります。
したがって、上記の2点に基づいて、我々はテスト構成XMLファイルに置くべきではありません。

 

おすすめ

転載: www.cnblogs.com/hujunwei/p/11115744.html