dbUnit插入并查找

时间:2018-07-25 16:31:17

标签: spring-boot dbunit spring-test-dbunit

我有一个根据数据集定义的数据库。我想插入一个新实体并在测试创建服务之后找到它。当我想找到实体时,它不存在。 我想交易没有保留,但如何更改呢?

我的测试:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration
@SpringBootTest
@Transactional
@TestPropertySource(locations="classpath:test.properties")
@TestExecutionListeners({ DependencyInjectionTestExecutionListener.class,
   DirtiesContextTestExecutionListener.class,
   TransactionDbUnitTestExecutionListener.class,
   DbUnitTestExecutionListener.class })
public class UserServiceTest {
    @Autowired
    private UserService userService;

    @Test
    @DatabaseSetup(value="datas.xml")
    public void createUser() {
        UserCreationResource resource = new UserCreationResource();
        resource.setEmail("test@test.com");
        resource.setFirstname("firstname");
        resource.setLastname("lastname");
        resource.setPassword("pwd");
        userService.createUser(resource);
        Iterable<User> users = userRepository.findAll();
        for(User user : users) {
            System.out.println(user.getEmail());
        }
        User user = userService.lookup("test@test.com");

        assertNotNull(user);
        assertNotEquals("pwd", user.getPassword());
    }
}

在System.out中,我可以看到由数据集定义的用户,但看不到新用户。

0 个答案:

没有答案