java - 测试 JPA 实体

标签 java spring spring-mvc spring-boot spring-test

我想知道如何为 Spring Repository 类编写 Junit 测试。

例如: 类AccountMoveActionDet

Jpa接口(interface)-AccountMoveActionDetlJpaRepository

我想测试这个存储库类是否工作。Spring Jpa 支持一些方法,例如

List findAll();
deleteAll();

我写了一个类,如下所示:

 @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"));
    }

}

Error creating bean with name 'com.gayan.cmp.jparepositories.test.AccountTypeMovementJpaRepositoryTest':

请帮我解决这个问题。

最佳答案

如果使用spring-boot 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");
    }

}

关于java - 测试 JPA 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42552749/

相关文章:

java - 不满意的依赖异常 : Error creating bean with name 'userController' : Unsatisfied dependency

java - 任务 'app:mergeDebugResource' 执行失败

java - 如何在 java 中读入 MySql View 的字符串列表内容?

数组方法参数的 Spring 表达式语言 (SpEL)

java - server.port 和 server.context-path 在部署到 tomcat 时不生效

java - Oracle中如何同时更新两个表?

spring - Spring Mvc中不同ViewResolver的使用

java - Spring Controller 和端点之间的区别

java - 为什么画的线会自动删除?

java - 大型 HashMap 的初始容量和 LoadFactor 的用户定义值?