Избавьтесь от квадратных наручей. Или как получить актуальную строку

Я делаю первые первые слепые шаги, чтобы быть уверенным в 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, но это не будет работать с выражением пути. У меня нет никаких подсказок или относительных результатов поиска. Если бы вы помогли мне советом, я был бы благодарен.

3 ответа

Ну, ты пытался подстегнуть это?

Что-то вроде rc3.substring(0,rc3.length()-1) должен сделать работу, другое решение будет использовать replaceAll метод, или, может быть, использовать некоторую библиотеку синтаксического анализа JSON.

  1. Вы можете substring ваш вывод.
  2. Ты можешь использовать contains() метод String учебный класс.
  3. Вы можете использовать Джексона, чтобы преобразовать его в Java Object. Смотрите блог Джексона

Вы можете попробовать следующее:

String Input = "[success]";

String replaceInput = Input.replaceAll("[,]","");

Надеюсь это поможет!

Другие вопросы по тегам