首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >远程服务器的Spring Boot测试

远程服务器的Spring Boot测试
EN

Stack Overflow用户
提问于 2016-10-27 18:13:56
回答 2查看 1.1K关注 0票数 0

我在我的应用程序中使用jUnit和SpringBootTest。例如:

代码语言:javascript
运行
复制
mvc.perform(MockMvcRequestBuilders.get("/categories")...

可以在远程服务器上运行测试吗?例如:

代码语言:javascript
运行
复制
mvc.perform(MockMvcRequestBuilders.get("192.168.1.1:80/categories")... 
EN

回答 2

Stack Overflow用户

发布于 2016-10-27 19:37:41

我认为这是不可能的,因为它超出了单元测试或集成测试的范围。如果您正在测试现有的‘re服务,那么它将不再是一个模拟。要从外部For服务获取数据,可以使用RestTemplate类:

代码语言:javascript
运行
复制
public class Application {

private static final Logger log = LoggerFactory.getLogger(Application.class);

public static void main(String args[]) {
    RestTemplate restTemplate = new RestTemplate();
    Quote quote = restTemplate.getForObject("http://gturnquist-quoters.cfapps.io/api/random", Quote.class);
    log.info(quote.toString());
}}

(取自Spring docs的例子)

票数 0
EN

Stack Overflow用户

发布于 2016-10-28 06:58:18

Spring MVC测试框架旨在测试Spring MVC控制器,而不需要实际启动HTTP服务器。

在您的情况下,在JUnit测试中,您应该使用真正的HTTP客户端(如RestTemplate),或者为了使事情更简单,请使用专门为此而设计的库。

基于Rest Assured的测试示例:

代码语言:javascript
运行
复制
given().
    param("key1", "value1").
    param("key2", "value2").
when().
    post("/somewhere").
then().
    body(containsString("OK"));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40281958

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档