________________springbootのTest

在测试类上加两个注解

@RunWith(SpringRunner.class)

 @SpringBootTest

public class UserDaoTest {

@Autowired

private UserDao userDao;

@Test

public void testAddUser() {

Assert.assertEquals(Integer.valueOf(1), userDao.addUser("root"));//断言的用法

Assert.assertEquals(Integer.valueOf(0), userDao.addUser(null));

}

}

在测试环境下,如果使用@RunWith(SpringRunner.class) @SpringBootTest则bean可以使用@Component来装配

如果使用@RunWith(SpringRunner.class) @SpringBootTest(classes=配置类.class)则配置类只能使用@Testconfiguration 或者@springbootconfiguration装配

@RunWith(SpringRunner.class)

@SpringBootTest//(classes=SpringbootConfiguration.class)

public class ApplicationContextTest {

@Autowired

private ApplicationContext context;

@Test

public void test() {

//System.out.println(context.getBean(User.class));

Assert.assertNotNull(context.getBean(User.class));

//Assert.assertNotNull(context.getBean(Runnable.class));

}

}

___________

@TestConfiguration

public class SpringbootConfiguration {

@Bean

public Runnable createRunnable() {

return ()->{};

}

}

测试情况下,优先读取测试环境下的配置文件,测试环境下没有才会加载正式环境下的文件

1、注解添加配置参数 可以使用 @SpringBootTest(properties={“app.version=1.0.0”})来配置测试环境的参数

2、注入configurableEnvironment ,利用EnvironmentTestUtils.addEnvironment(configurableEnvironment,"properties");来配置测试环境的 参数

原文地址:https://www.cnblogs.com/qiqisx/p/9386109.html