Java 测试JPA实体
我想知道如何为Spring存储库类编写Junit测试 例如: 类AccountMoveActionDet Jpa接口AccountMoveActionDetlJpaRepository 我想测试这个存储库类是否工作Java 测试JPA实体,java,spring,spring-mvc,spring-boot,spring-test,Java,Spring,Spring Mvc,Spring Boot,Spring Test,我想知道如何为Spring存储库类编写Junit测试 例如: 类AccountMoveActionDet Jpa接口AccountMoveActionDetlJpaRepository 我想测试这个存储库类是否工作 List findAll(); deleteAll(); 我写了一节课,如下所示: @RunWith(SpringJUnit4ClassRunner.class) public class AccountTypeMovementJpaRepositoryTest extends
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"));
}
}
创建名为的bean时出错
'com.gayan.cmp.jparepositories.test.AccountTypeMovementJpaRepositoryTest':
请帮助我解决这个问题。如果您使用spring boot 1.4及以上版本,最好开始测试JPA切片:
如果您使用spring boot 1.4及以上版本,则最好开始测试JPA切片:
添加完整的stacktrace@Jens我们不能自动连接JPA positiories吗?当然可以。那么我们如何测试JPA positioris呢?使用测试数据库和测试数据添加完整的stacktrace@Jens我们不能自动连接JPA positiories吗?当然可以。那么我们如何测试JPA positioris呢?使用测试数据库和测试数据你说的@DataJPATE是什么意思?我已经附加了一个链接,你应该请注意,此代码仅适用于spring boot 1.4及以上版本,我使用boot 1.4.1。但是不能放置@DataJpaTest注释:(@Gaiya您遇到了什么问题?您是否添加了
spring boot starter test
依赖项?您所说的@DataJpaTest是什么意思?我已经附加了一个链接,您应该提到,该代码仅适用于spring boot 1.4及以上版本。我使用boot 1.4.1。但是不能放置@DataJpaTest注释:(@Gaiya您遇到了什么问题?您是否添加了spring boot starter test
dependency?
@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");
}
}