【发布时间】:2017-02-09 13:45:24
【问题描述】:
我正在尝试为我的一项服务编写测试。该服务使用自动装配的存储库,该存储库使用 jdbcTemplate 来访问数据库。问题是测试实际上将数据放入了真实的数据库中。
这是我的测试课:
@SpringApplicationConfiguration(Application.class)
@SpringBootTest(classes = { UserServiceImpl.class, UserService.class })
@RunWith(SpringJUnit4ClassRunner.class)
public class UserServiceTest {
@Autowired UserService userService;
@Test
public void test() {
final String fName = " xxxxxx ";
User user = new User();
user.setFirstName(fName);
user.setLastName(fName);
user.setEmail(fName);
user.setLogin(fName);
user.setPhone(fName);
userService.create(user);
user = userService.getUserByLogin(fName).get();
assertEquals(fName, user.getLogin());
}
}
我能做些什么来阻止 userService 使用真实数据库并以某种方式进行模拟吗?
【问题讨论】:
标签: java spring testing service spring-boot