0

我正在通过 Java 放心的最初的第一个盲目步骤。

我的请求很少,实际上效果很好,我开始添加断言。所以我发送请求,获取 JSON 作为响应,提取它。我需要验证它的一部分是否等于“成功”。

我把它当作

Response res = given().
when().post("/profile").then().contentType(ContentType.JSON).extract().response();

rc3 = res.path("op_list.msg").toString();

System.out.println(rc3);

所以根据toString方法的文档,输出看起来像数组。当然,断言不起作用:(它看到了

[成功]

成功

内部代码要求不建议使用子字符串。我只是以为我使用了错误的方法,但没有找到任何其他方法,asString但它不适用于路径表达式。我没有任何线索或相关搜索结果。如果您能帮助我提供建议,我将不胜感激。

4

3 回答 3

1
  1. 你可以substring你的输出。
  2. 您可以使用类contains()的方法String
  3. 您可以使用 Jackson 将其转换为 Java 对象。见杰克逊博客
于 2018-03-29T13:16:37.720 回答
1

好吧,您是否尝试过对其进行子串化?

rc3.substring(0,rc3.length()-1)应该做的工作,另一种解决方案是使用replaceAll方法,或者可能使用一些 JSON 解析库。

于 2018-03-29T13:14:48.250 回答
-1

您可以尝试以下方法:

字符串输入 = "[成功]";

字符串replacedInput = Input.replaceAll("[,]","");

希望这可以帮助!

于 2018-03-29T13:18:17.753 回答