SpringBoot进行单元测试,需要在maven中加入以下依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
如果想要对service层进行单元测试,需要将service对象注入,再进行测试。
在测试类上面加入以下注解:
这个SpringBootDemoApplication换成项目的启动类Application的具体类名。
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = SpringBootDemoApplication.class)
也可以使用默认的注解:
@RunWith(SpringRunner.class)
@SpringBootTest(classes = SpringBootDemoApplication.class)
示例如下:
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = SpringBootDemoApplication.class)
public class UserServiceImpTest {
@Resource(name = "userServiceImp")
private UserSerevice userService;
private String userName="admin";
@Before
public void before() throws Exception {
}
@After
public void after() throws Exception {
}
@Test
public void testFindUserIdByName() throws Exception {
//TODO: Test goes here...
Assert.assertEquals( 2 , userService.findUserIdByName(userName) );
}
}