Java 重写Micronaut测试中的属性值

Java 重写Micronaut测试中的属性值,java,micronaut,Java,Micronaut,在测试方法上使用@Property似乎无效 这是我的应用程序。yml 问候语:你好 Application.java @控制器 公共类应用程序{ @属性(name=“问候语”) 弦乐问候; @得到 字符串hello(){ 回敬问候+“世界!”; } 公共静态void main(字符串[]args){ Micronaut.run(Application.class,args); } } 现在test1按预期通过,但test2失败 @MicronautTest//(rebuildContext=

在测试方法上使用
@Property
似乎无效

这是我的
应用程序。yml

问候语:你好
Application.java

@控制器
公共类应用程序{
@属性(name=“问候语”)
弦乐问候;
@得到
字符串hello(){
回敬问候+“世界!”;
}
公共静态void main(字符串[]args){
Micronaut.run(Application.class,args);
}
}
现在
test1
按预期通过,但
test2
失败

@MicronautTest//(rebuildContext=true)
公共类降级{
@注入
@客户(“/”)
HttpClient;
@试验
void test1(){
资产质量(
“你好,世界!”,
client.toBlocking()检索(GET(“/”)
);
}
@属性(name=“问候”,value=“你好”)
@试验
void test2(){
资产质量(
“你好,世界!”,
client.toBlocking()检索(GET(“/”)
);
}
}
输出

org.opentest4j.AssertionFailedError: expected: <Bonjour World!> but was: <Hello World!>
我在GitHub上的


这是一个bug还是我遗漏了什么?

似乎手动刷新
嵌入式服务器
并结合
@MicronautTest(rebuildContext=true)
可以使测试通过

@MicronautTest(rebuildContext=true)
公共类降级{
@注入
@客户(“/”)
HttpClient;
@注入
嵌入式服务器;
@试验
void test1(){
资产质量(
“你好,世界!”,
client.toBlocking()检索(GET(“/”)
);
}
@属性(name=“问候”,value=“你好”)
@试验
void test2(){
server.refresh();
资产质量(
“你好,世界!”,
client.toBlocking()检索(GET(“/”)
);
}
}

但这与其说是解决方案,还不如说是一种变通方法,因为它声明应该自动获取它。

如果将
@Property(name=“greeting”,value=“Bonjour”)
添加到测试类(而不是测试中的方法)这会影响您的测试方法吗?@JeffScottBrown将其添加到测试类会影响两个测试,因此
test1
失败,而
test2
通过
Connect Error: Connection refused: no further information: localhost/127.0.0.1:[some random port]