我想使用@JpaDataTest来测试我的存储库
我使用它的方式是:
@RunWith(SpringRunner.class)
@DataJpaTest
public class MyTest {
@Autowired
private TestEntityManager entityManager;
@Autowired
private MyRepo myRepo;
@Test
public void myTest() {
assertEquals(0, myRepo.findAll().size());
entityManager.persist(new MyEntity());
//entityManager.flush();
assertEquals(1, myRepo.findAll().size());
}
}
由于第二个findAll返回0实体,因此测试未通过
如果我删除要刷新的评论
我遇到错误
javax.persistence.TransactionRequiredException:没有正在进行的交易
答案 0 :(得分:1)
我找到原因...
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
如果我删除@ComponentScan,它将起作用...