Я пытаюсь использовать Katalon Studio для автоматизации некоторых веб-сервисов. Я следил за этим руководством о том, как анализировать возвращенное тело Json с помощью jsonslurper. https://docs.katalon.com/katalon-studio/tutorials/parse_json_responses.html
Все работает нормально, как описано в руководстве. Я хотел посмотреть, могу ли я использовать утверждения junit, в частности, assertEquals() для лучшего текста ошибки. Учитывая, что у нас есть это
import groovy.json.JsonSlurper
String jsonString = {"menu": {
"id": "file",
"tools": {
"actions": [
{"id": "new", "title": "New File"},
{"id": "open", "title": "Open File"},
{"id": "close", "title": "Close File"}
],
"errors": []
}}}
JsonSlurper slurper = new JsonSlurper()
Map parsedJson = slurper.parseText(jsonString)
def array1 = parsedJson.menu.tools.actions
String onlickValue1 = ""
for(def member : array1) {
assertEquals("Open File", member.title)
break
}
У меня проблемы с тем, что мое утверждение выдает ошибку при сравнении самого первого элемента заголовка, с которым он сталкивается (то есть «Новый файл»).
Я намереваюсь перебрать все элементы в массиве и утвердить ожидаемое значение для всех из них. Если мое ожидаемое значение не существует, я потерплю неудачу.
Я чувствую, что что-то упускаю, потому что мы делали что-то подобное в прошлом с java, но я просто не вижу этого здесь.
title
в массиве действий. Теперь я понимаю, что это связано с моей путаницей логики в моем коде (использовал цикл for.each для сравнения каждого элемента в массиве, и он неправильно работал). Я закрою этот вопрос и спрошу, что я пытаюсь решить по-другому. - person Bratok17   schedule 10.06.2019