测试bean:
package com.abc;
/*
* author : ajing
* date : 2018/4/10 11:15
* */
public class TestBean {
private String content;
public TestBean(String content) {
this.content = content;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
}
测试配置:
package com.abc;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
/*
* author : ajing
* date : 2018/4/10 11:16
* */
@Configuration
public class TestConfig {
@Bean
@Profile("dev") //设置bean的环境,可以使用@ActiveProfiles("dev")激活配置
public TestBean devTestBean(){
return new TestBean("from dev profile");
}
@Bean
@Profile("pro")
public TestBean proTestBean(){
return new TestBean("from pro profile");
}
}
测试类:
package com.abc;
/*
* author : ajing
* date : 2018/4/10 11:18
* */
import org.junit.Assert;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class )
@ContextConfiguration(classes = TestConfig.class) //加载ApplicationContext,加载测试配置类
@ActiveProfiles("dev") //激活配置bean设定环境
public class Test {
@Autowired
private TestBean testBean;
@org.junit.Test
public void test(){
String defineContent="from dev profile";
Assert.assertEquals(defineContent,testBean.getContent());
}
}