2017-03-02 7 views
1

Spring RepositoryクラスのJunitテストを書く方法を知りたい。一例として、JPAエンティティをテストする

: クラスAccountMoveActionDet

JPAインターフェース-AccountMoveActionDetlJpaRepository

そして私は、私が書いた

List findAll(); 
deleteAll(); 

のようないくつかのメソッドをサポートし、このリポジトリクラスの仕事やnot.Spring JPAをテストしたいです次のようなクラス:

@RunWith(SpringJUnit4ClassRunner.class) 
public class AccountTypeMovementJpaRepositoryTest extends AbstractJpaTest { 

    @Autowired 
    AccountTypeMovementJpaRepository accountTypeMovementJpaRepository; 

    @Override 
    public void test() { 
    executeSqlScript("/fixtures/accountTypeMovementJpa.sql"); 
    assertEquals("accountTypeMovementJpaRepository Test", accountTypeMovementJpaRepository.findAll().size(), 
     JdbcTestUtils.countRowsInTable(getJdbcTemplate(), "COF5REP")); 
    } 

} 

エラー名 でBeanを作成するに 'com.gayan.cmp.jparepositories.test.AccountTypeMovementJpaRepositoryTest':

私はこの問題を解決するのに役立ちます。

+0

たちはJpaRepositoriesをautowired – Jens

+0

@Jensカント完全なスタックトレースを追加しますか? –

+0

はいもちろんです。 – Jens

答えて

0

あなたは春ブート1.4および開始するための最良のplace以上、テストを使用する場合はJPAスライス

@RunWith(SpringRunner.class) 
@DataJpaTest 
public class UserRepositoryTests { 

    @Autowired 
    private TestEntityManager entityManager; 

    @Autowired 
    private UserRepository repository; 

    @Test 
    public void findByUsernameShouldReturnUser() { 
     this.entityManager.persist(new User("sboot", "123")); 
     User user = this.repository.findByUsername("sboot"); 

     assertThat(user.getUsername()).isEqualTo("sboot"); 
     assertThat(user.getVin()).isEqualTo("123"); 
    } 

} 
+0

テストデシベルとテストデータを使用して –

+0

をWHTを意味しています –

+0

を添付しましたuは@DataJpaTestによって – Jens

関連する問題