Я пишу модульное тестирование, используя @ DataJpaTest . Хотя он должен выполнять автоматический c откат после каждого метода, он этого не делает. Можете ли вы помочь мне с этим.
Здесь написано 2 тестовых примера, в идеале test2 должен возвращать ноль, но возвращает 1.
@RunWith(SpringRunner.class)
@DataJpaTest
public class EmployeeRepositoryTest {
@Autowired TestEntityManager em;
@Autowired EmployeeRepository rep;
// @Autowired EmployeeService service;
//Spring context loaded only once, reused by other methods
@Test
public void test1() {
// System.out.println(service); No such bean found
Employee e= new Employee();
e.setName("Payal");
em.persist(e);
em.flush();
Employee emp=rep.findByName("Payal");
assertNotNull(emp);
assertThat(emp.getId()).isGreaterThan(0);
}
@Test
public void test2() {
Employee emp=rep.findByName("Payal");
assertNull(emp);
}
}
Полный код можно найти по адресу: https://github.com/payalbnsl/SpringUnitTestDemo/tree/master/src/test/java/com/example/demo/dao