rest-assured - 请放心,基本获取查询会出错
问题描述
我正在尝试检查基本的放心获取方法并低于错误。使用以下版本:rest-assured-4.1.1-dist.zip
代码:
import io.restassured.RestAssured;
import static io.restassured.RestAssured.given;
public class Basics {
public static void main(String[] args) {
System.out.println("Testing");
RestAssured.basePath = "https://maps.googleapis.com";
given().
param("location", "-33.8670522,151.1957362").
param("radius", "500").
param("key", "AIzaSyDAyGVdrax3PwjtaJyQvlajVpgt46HBEWo").
when().
get("/maps/api/place/nearbysearch/json").
then().assertThat().statusCode(200);
}
}
输出:
测试
线程“主”java.net.ConnectException 中的异常:连接被拒绝:在 java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) 在 java.net.AbstractPlainSocketImpl 的 java.net.DualStackPlainSocketImpl.connect0(Native Method) 处连接。 doConnect(AbstractPlainSocketImpl.java:350) 在 java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 在 java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) 在 java.net.PlainSocketImpl.connect(PlainSocketImpl.java :172) 在 java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 在 java.net.Socket.connect(Socket.java:589) 在 org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory. java:121) 在 org.apache.http.impl.conn.DefaultClientConnectionOperator。openConnection(DefaultClientConnectionOperator.java:180) at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:326) at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:610)在 org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:445) 在 org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835) 在 org.apache.http.impl .client.CloseableHttpClient.execute(CloseableHttpClient.java:83) at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56) at org.apache.http.client.HttpClient$execute$0.call(未知来源)在 org.codehaus.groovy.runtime 的 org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)。callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:135) at io.restassured.internal.RequestSpecificationImpl$RestAssuredHttpBuilder.doRequest(RequestSpecificationImpl.groovy: 2054) 在 io.restassured.internal.http.HTTPBuilder.doRequest(HTTPBuilder.java:494) 在 io.restassured.internal.http.HTTPBuilder.request(HTTPBuilder.java:451) 在 io.restassured.internal.http.HTTPBuilder $request$2.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115 ) 在 io.restassured.internal 的 org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:151)。在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:62) 的 RequestSpecificationImpl.sendHttpRequest(RequestSpecificationImpl.groovy:1450): 43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101) 在 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java :323) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:821) at io .restassured.internal.RequestSpecificationImpl.invokeMethod(RequestSpecificationImpl.groovy) 在 org。codehaus.groovy.runtime.callsite.PogoInterceptableSite.call(PogoInterceptableSite.java:45) 在 org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.callCurrent(PogoInterceptableSite.java:55) 在 org.codehaus.groovy.runtime.callsite。 CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:156) at io.restassured.internal.RequestSpecificationImpl.sendRequest(RequestSpecificationImpl.groovy:1199) at sun .reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke (Method.java:498) 在 org.codehaus.groovy.reflection。CachedMethod.invoke(CachedMethod.java:101) 在 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) 在 groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217) 在 groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl .java:1041) 在 org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.call( PogoInterceptableSite.java:45) 在 org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) 在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) 在 org .codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:151) 在 io.restassured.internal.filter。SendRequestFilter.filter(SendRequestFilter.groovy:30) at io.restassured.filter.Filter$filter$0.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at io .restassured.filter.Filter$filter.call(Unknown Source) at io.restassured.internal.filter.FilterContextImpl.next(FilterContextImpl.groovy:72) at io.restassured.filter.time.TimingFilter.filter(TimingFilter.java: 56) 在 org.codehaus.groovy.runtime.callsite 的 org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) 的 io.restassured.filter.Filter$filter.call(Unknown Source)。 AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:143) at io.restassured.internal.filter.FilterContextImpl。next(FilterContextImpl.groovy:72) at io.restassured.filter.FilterContext$next.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus。 groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:135) at io.restassured.internal.RequestSpecificationImpl.applyPathParamsAndSendRequest(RequestSpecificationImpl. groovy:1654) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang .reflect.Method.invoke(Method.java:498) 在 org.codehaus.groovy.reflection。CachedMethod.invoke(CachedMethod.java:101) 在 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) 在 groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217) 在 groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl .java:1041) 在 org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.call( PogoInterceptableSite.java:45) 在 org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.callCurrent(PogoInterceptableSite.java:55) 在 org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) 在 org .codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:156) 在 org。io.restassured.internal.RequestSpecificationImpl.applyPathParamsAndSendRequest(RequestSpecificationImpl.groovy:1660) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:184)。 reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy .reflection.CachedMethod.invoke(CachedMethod.java:101) 在 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) 在 groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217) 在 groovy.lang.MetaClassImpl。在 groovy.lang.MetaClassImpl 调用方法(MetaClassImpl.java:1041)。invokeMethod(MetaClassImpl.java:821) at io.restassured.internal.RequestSpecificationImpl.invokeMethod(RequestSpecificationImpl.groovy) at org.codehaus.groovy.runtime.callsite.PogoInterceptableSite.call(PogoInterceptableSite.java:45) at org.codehaus.groovy .runtime.callsite.PogoInterceptableSite.callCurrent(PogoInterceptableSite.java:55) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent (AbstractCallSite.java:156) 在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:184) 在 io.restassured.internal.RequestSpecificationImpl.get(RequestSpecificationImpl.groovy:171) 在 io.restassured。 internal.RequestSpecificationImpl.get(RequestSpecificationImpl.groovy) 在 Basics.main(Basics.java:15)
解决方案
您需要使用RestAssured.baseURI
变量,而不是RestAssured.basePath
. 这将起作用:
import io.restassured.RestAssured;
import static io.restassured.RestAssured.given;
public class Basics {
public static void main(String[] args) {
//You need to set baseURI here, not basePath
RestAssured.baseURI = "https://maps.googleapis.com";
given().
param("location", "-33.8670522,151.1957362").
param("radius", "500").
param("key", "value").
when().
get("/maps/api/place/nearbysearch/json").
then().assertThat().statusCode(200);
}
}
推荐阅读
- flutter - 断言失败:布尔表达式不能为空异常
- r - 如何基于一列组合 2 个数据框并填写其他列
- c# - ReSharper Continuous Testing 正在运行检测测试
- html - 当正文的宽度尚未设置时,如何为标题使用百分比
- java - 如何使用递归工作制作反向补码方法?
- python - Pandas 合并和合并行
- react-native - TouchableOpacity 未在博览会上触发本机反应
- performance - 为什么从网络驱动器加载猫鼬包非常慢?
- c# - 水平连接列表 C#
- php - 提供消息时,Phpunit `markTestIncomplete` 打印 I