gpt4 book ai didi

java - 无法将数据从@DataProvider 传递到 JSON

转载 作者:行者123 更新时间:2023-11-29 08:33:28 24 4
gpt4 key购买 nike

我的所有请求都因失败而失败,似乎我无法将数据从数据提供者传递到 json 字段。有什么想法和想法吗?

我正在使用@dataprovider 为我的性能测试传递多个值。我为数据提供者中的每个值获取状态代码 200,但无法将数据提供者值传递到 Json 字段“值”。 Values 字段获取每个数据提供者的值并请求 api 获取信息。

package com.company.testing;
import static io.restassured.RestAssured.given;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import io.restassured.response.Response;

public class test1 {

Response myResponse;
String baseURL = "http://test.com/1.0/api";

@DataProvider(name = "data")
public Object[][] createTestData() {
return new Object[][]{
{"some1.com"},
{"some2.net"},
{"some3.com"},
{"some4.com"}};
}



@Test(dataProvider = "data")
public void potTest(String values){
Response myResponse;
String baseURL = "http://test.com/1.0/api";
System.out.println(values);
String Json = buildJson(values);
myResponse = given().contentType("application/json").body(Json).when().post(baseURL);
//Print Response
//System.out.println("Request :" + Json);
System.out.println("Response Body : "+myResponse.getBody().asString());
System.out.println("Response Code : "+myResponse.getStatusCode());
System.out.println("Response Time : "+myResponse.getTime());
}

String buildJson(String values){
return "{\n" +
" \"oemid\":\"company1\",\n" +
" \"deviceid\":\"DeviceId\",\n" +
" \"uid\":\"system1\", \n" +
" \"values\":\n" +
" [\"values\"], \n" +
" \"queries\":\n" +
" [\"gethistory\"], \n" +
" \"starttime\" : \"2017-06-10T00:00:00\", \n" +
" \"endtime\" : \"2017-08-25T00:00:00\", \n" +
" \"xml\":0, \n" +
" \"nocache\":1 \n" +
" }\n";
}




}

最佳答案

您的 buildJson 方法根本没有使用参数。将值部分替换为

"\"values\":["+ values + "\"]"+

关于java - 无法将数据从@DataProvider 传递到 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45950585/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com