当前位置: 首页 > 知识库问答 >
问题:

我们如何放心传递多个标头?

景翰音
2023-03-14

我对Java是个新手,我正在尝试做一个非常基本的测试,检查API的响应是否为200ok。你能告诉我,为了传递多个标题Id、Key和ConId,我需要在下面的脚本中更改什么吗?

import org.junit.Test;
import com.jayway.restassured.*;
import com.jayway.restassured.http.ContentType;
import static org.hamcrest.Matchers.*;
import static com.jayway.restassured.RestAssured.*;

public class APIresponse

{

    public static void main(String[] args) 
        {
            APIresponse apiresponse = new APIresponse();
            apiresponse.response();
        }

    @Test
    public void response ()
    {
        baseURI="http://testme/api/";
        given().
            header("Id", "abc"). 
            param("Key", "NuDVhdsfYmNkDLOZQ").
            param("ConId", "xyz").
        when().
            get("/uk?Id=DT44FR100731").
        then().
            contentType(ContentType.JSON).
            body("response.code", equalTo("200"));
    }

}

共有3个答案

督飞羽
2023-03-14

或者,您可以使用 RestAsure 中的标头(),它支持您同时添加多个标头进行请求。

标题描述

鲁羽
2023-03-14

您还可以创建和添加多个标题的Map Object,如下所示

    Header h1= new Header("Accept", "*/*");
    Header h2 = new Header("Accept-Language", "en-US");
    Header h3 = new Header("User-Agent", "Mozilla/5.0");
    List<Header> list = new ArrayList<Header>();
    list.add(h1);
    list.add(h2);
    list.add(h3);

    Headers header = new Headers(list);
    request.headers(header);
满元凯
2023-03-14

添加多个标头的最简单方法是在. given()之后多次重复. head(Headername, Headervalue)

given().
  header("Id", "abc").
  header("name","name").
  header("","")
  ...

您可以在这个github链接的测试套件中找到使用REST Assured框架传递头的不同方法。

编辑:

要在放心中验证响应状态:

expect().statusCode(200),log().ifError().given()...... 

或者从这个github链接中选择一个如何测试响应标头的示例

 类似资料:
  • 我是新的放心,我试图做一个非常基本的测试来检查响应体和状态。我在这个API调用中按要求传递头部,但当我运行测试时,我得到了401个未经授权的消息,而不是在响应体中显示结果。当我使用Postman运行相同的API时,它的工作很好 下面是我得到的控制台消息,其中显示401 响应发送=>io.restassured.internal.restassuredresponseImpl@18cebaa5响应正

  • 如有任何帮助,不胜感激。

  • 我写了一个可以上传文件到服务器的服务,现在我正在放心地编写它的集成测试。功能代码如下: 如果我添加标题信息“content-type=multipart/form-data”,我将得到这样的消息:“400-Request不是一个多部分请求,有关更多信息,请参见详细信息”。这部分也让我感到困惑,因为在上面的图像中,您可以看到我正在发送一个“表单数据”文件,这怎么可能不是一个多部分请求呢? 不管怎样,

  • 问题内容: 如何在Go中将多个外部命令通过管道传递?我已经试过了这段代码,但是看到一条错误消息。 问题答案: StdoutPipe返回一条管道,该管道将在命令启动时连接到命令的标准输出。在Wait看到命令退出后,管道将自动关闭。 (来自http://golang.org/pkg/os/exec/#Cmd.StdinPipe) 您确实关闭了事实。 我做了一个工作示例(只是一个演示,添加了错误捕获功能

  • 问题内容: 我试图弄清楚如何在URL中传递多个参数。我想将纬度和经度从我的android类传递给Java servlet。我怎样才能做到这一点? 在这种情况下,输出(写入文件)为。这是可行的,但我想在两个单独的参数中传递纬度和经度,以便减少在服务器端的工作。如果不可能,我如何至少在&之间添加一个空格,以便可以使用class获取经度和纬度。我试过以下行,但无济于事。 我的servlet代码如下: 我

  • 本文向大家介绍在 mapper 中如何传递多个参数?相关面试题,主要包含被问及在 mapper 中如何传递多个参数?时的应答技巧和注意事项,需要的朋友参考一下 1、第一种:   2、第二种:使用 \@param 注解:   然后,就可以在 xml 像下面这样使用(推荐封装为一个 map,作为单个参数传递给mapper)   3、第三种:多个参数封装成 map