mock server java_java – 使用MockRestServiceServer模拟REST调用

我正在尝试编写一个JUnit测试用例,用于测试辅助类中的方法.该方法使用REST调用外部应用程序,这是我试图在JUnit测试中模拟的调用.

辅助方法使用Spring的RestTemplate进行REST调用.

在我的测试中,我创建了一个模拟REST服务器并模拟REST模板并将它们实例化为:

@Before

public void setUp() throws Exception {

mockServer = MockRestServiceServer.createServer(helperClass.getRestTemplate());

}

然后我为mock服务器播种,以便在helper方法进行REST调用时它应该返回一个适当的响应:

// response is some XML in a String

mockServer

.expect(MockRestRequestMatchers.requestTo(new URI(myURL)))

.andExpect(MockRestRequestMatchers.method(HttpMethod.GET))

.andRespond(MockRestResponseCreators.withStatus(HttpStatus.OK)

.contentType(MediaType.APPLICATION_XML)

.body(response));

当我运行我的测试时,helper方法从它所做的REST调用中接收一个空响应,并且测试失败.

我已尝试将带有和不带查询参数的URL(“http://server:port/application/resource”)放在“myURL”变量中(以引出匹配以便它返回响应),但无法让模拟服务器返回任何内容.

我试过搜索这种代码的例子,但还没有找到任何看起来像我的场景的东西.

Spring版本4.1.7.

在此先感谢您的任何帮助.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值