我注意到在使用Spring上下文属性的JUnit测试中,uuid始终存在且具有特定值。它的价值是什么?为什么它存在?
我的项目中没有属性文件,并且测试读取的唯一弹簧上下文中定义的PropertyPlaceHolderConfigurer
为空,它不会加载任何属性。
我的测试班:
@ContextConfiguration(locations = {
"classpath:main-context.xml"
})
@RunWith(SpringJUnit4ClassRunner.class)
public class MyTest {
@Value("${uuid}") String uuidProp;
@Test
public void test() {
System.out.println("uuid = " + uuidProp);
System.out.println("uuid sys property = " + System.getProperty("uuid"));
}
}
主context.xml中:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
</bean>
</beans>
这总是打印出相同的值。