gpt4 book ai didi

java - ReflectionTestUtils.setField (Mockito),无法识别字段。

转载 作者:行者123 更新时间:2023-12-02 11:11:23 27 4
gpt4 key购买 nike

我正在尝试使用 Mockito 测试 Spring Boot Controller 。我正在关注本教程:https://www.javacodegeeks.com/2013/07/getting-started-with-springs-mvc-test-framework-part-1.html

我正在测试的方法是:

public class DigipostSpringConnector {

@Autowired
private String statusQueryToken;

@RequestMapping("/onCompletion")
public String whenSigningComplete(@RequestParam("status_query_token") String token){
this.statusQueryToken = token;
}

到目前为止,我已经在我的测试类中编写了此内容:

public class DigipostSpringConnectorTest {

@Before
public void whenSigningCompleteSetsToken() throws Exception{
MockitoAnnotations.initMocks(this);
DigipostSpringConnector instance = new DigipostSpringConnector();
ReflectionTestUtils.setField(instance, "statusQueryToken", statusQueryToken);

}
}

但是,我收到错误“无法解析符号 statusQueryToken”,似乎测试不知道我指的是另一个类中的私有(private)字段 statusQueryToken。

关于如何解决这个问题有什么想法吗?

谢谢!

最佳答案

这是因为whenSigningCompleteSetsToken()方法中的值变量statusQueryToken没有定义。试试这个:

String statusQueryToken = "statusQueryToken"; 
ReflectionTestUtils.setField(instance, "statusQueryToken", statusQueryToken);

关于java - ReflectionTestUtils.setField (Mockito),无法识别字段。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38372126/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com