RestAssured Connection拒绝 - 不使用Spring

时间:2017-09-12 19:15:14

标签: java spring rest

我正在尝试运行Junit测试用例来检查REST端点。每次都拒绝连接。我遇到an SO post,有人通过Spring注释设置端口来解决它。我试图尽可能地避免这种情况。有没有人在不使用Spring注释的情况下解决这个问题?当我在Wildfly服务器上运行它时,URL(在下面的错误中)可以正常工作。

public function getSitioPadre($id){
    $padre =  md_sitio_espacios::where([['SITIO_ESPACIOS_ID','=',$id]])->get()->toArray();       
    if($padre[0]["PADRE"] == 0){
        return $padre[0]["SITIO_ESPACIOS_ID"];
    }else{
        return $this->getSitioPadre($padre[0]["PADRE"]); // should work better
    }
}

错误

public class HelloServiceTest {

private static RequestSpecification spec;

@BeforeClass
public static void initSpec(){    
    spec = new RequestSpecBuilder()
            .setContentType(ContentType.JSON)
            .setBaseUri("http://localhost/")
            .addFilter(new ResponseLoggingFilter())//log request and response for better debugging. You can also only log if a requests fails.
            .addFilter(new RequestLoggingFilter())
            .build();
}

@Test
public void emptyTest(){}


//https://blog.philipphauer.de/testing-restful-services-java-best-practices/  

@Test
public void testGetUserInfo(){
    given()
            .spec(spec)
            //.param("limit", 20)
            .when()
            .get("demoapi/rest/helloservice/json/103")
            .then()
            .statusCode(200);

    //        Response resp = client.target("http://localhost:8080/demoapi/rest/helloservice/json/103").request().get();
    // assertEquals("login name: jbray", resp.toString());
}

1 个答案:

答案 0 :(得分:0)

RestAssured junit集成将假定服务器已启动且应用程序已部署。这部分不是RestAssured的责任。您作为测试设置完成的RequestSpecification部分只是在一个地方放置了一些常见的配置和可重复的测试规范。但是,您可以在示例中启动像Jetty这样的嵌入式服务器here作为测试设置的一部分。