代码之家  ›  专栏  ›  技术社区  ›  Martin Ahrer

如何通过RequestSpecBuilder或RequestSpecification设置放心的basePath

  •  2
  • Martin Ahrer  · 技术社区  · 10 年前

    我知道,放心的话,我们可以使用 RestAssured.basePath = "/resource" .

    然而,我需要为请求规范在本地设置它。任何尝试过这个的人都看不到任何API。

    2 回复  |  直到 10 年前
        1
  •  3
  •   Johan    10 年前

    这不受支持。请将其作为问题添加到 issue tracker 并陈述您的用例。最接近解决方案的可能是设置baseUri。

    更新:2.3.2现在支持此功能。

        2
  •  0
  •   Ashwiinn Karaangutkar    8 年前

    下面是一个示例,我展示了如何全局设置基本路径。

    import org.testng.annotations.BeforeClass;
    import org.testng.annotations.Test;
    import com.jayway.restassured.builder.RequestSpecBuilder;
    import com.jayway.restassured.http.ContentType;
    import com.jayway.restassured.specification.RequestSpecification;
    import static com.jayway.restassured.RestAssured.*;
    
    public class RequestSpecificationTest {
    
    RequestSpecification rspec;
    RequestSpecBuilder build;
    
    @BeforeClass
    public void requestSpec () {
    
    build = new RequestSpecBuilder();
    build.setBaseUri ("https://maps.googleapis.com");
    build.setBasePath ("maps/api/place/textsearch/json");
    build.addParam ("query", "restaurants in mumbai");
    build.addParam ("key", "XYZ");
    
    rspec = build.build ();
    
    }
    
    @Test
    public void test01 () {
    
         given()
        .spec (rspec)
        .when ()
        .get ("")
        .then ()
        .contentType (ContentType.JSON)
        .statusCode (200);     
     }
    
    }
    

    您也可以按照我的教程学习相同的主题: Using RequestSpecBuilder in Rest Assured ( Code Reuse )