2017-01-20 5 views
0

RESTfulなAPI Webサービスのjunitテストケースを記述して、DBからの応答と期待される応答をチェックしたいと思います。 ここで基本的な流れは、RESTファイル(通話)である - >ビジネスロジック(DBから生じるフェッチ) - >ここでRESTファイル(リターン)JPA REST APIにjunitを使用してテストケースを書き込む方法は?

は私のRESTファイルです:

@Path("add") 
@Stateless 
public class AddingREST { 

@Inject 
private AddBO addBO; 

@GET 
@Produces(MediaType.APPLICATION_JSON) 
@Path("success/{n1}/{n2}") 
public List addREST(@PathParam("id") int n1, @PathParam("id") int n2) { 
    return addBO.add(n1, n2); 
} 

}

そして、

@Stateless 
public class AddBO { 

@PersistenceContext(unitName = "WebApplicationPU") 
private EntityManager entityManager; 

public List add(int n1, int n2) { 
    int n3 = entityManager.createNamedQuery("SELECT no from no_table").getResultList(); 
    List numbers = new ArrayList<int>(); 
    numbers.add(n1); 
    numbers.add(n2); 
    numbers.add(n3); 
    numbers.add(n1+n2+n3); 
    return numbers; 
} 

}

Q:ここではビジネスロジックファイルですここでは、実際のコードが別のデータベースにあるので、テストケースでn3のDBからフェッチされた値を取得する方法です。基本的に、テストケースは別の空のデータベースで実行され、データベースを実行している間は、テストケースを実行した後にデータを挿入し、データベースをクリーンアップする必要があります。

どうすればよいですか?データの挿入とクリーニングにDBUnitを使用する必要がありますか?

答えて

0

はい、dbUnitは、JPAを使用したデータベースの準備に適しています。

+0

どうすればよいですか?いくつかのサンプルコードが必要です。 – agrawalsp

関連する問題