Тестирование API Каратэ - Удалите повторяющиеся значения из ответа и сравните его с новым ответом. - PullRequest
0 голосов
/ 29 октября 2018

У меня есть сценарий, где в ответ я получаю повторяющиеся значения.

And def abcName =  $ListDataSet_Response.rowData[*].4

и распечатать abcName

 [
 "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "Bay Pond USB, Inc MS",
  "Bay Pond USB, Inc MS",
  "BP USB III Inc MS",
  "BP USB III Inc MS",
  "BP USB III Inc MS",
  "BP USB III Inc MS",
  "BP CS Sht NCA",
  "BP CS Sht NCA",
  "BP CS Sht NCA",
  "BP CS Sht NCA", 
  "BP USB IV, Inc MS",
  "BP Mrts Block NCA MS",
  "BP Mrts Block NCA MS"

  ]

Теперь у меня есть функция, где с запросом различных значений я могу получить ответ без повторяющихся значений. После выполнения этой операции. Новый ответ:

  [
  "BP Part Sht NCA MS",
  "Bay Pond USB, Inc MS",
  "BP USB III Inc MS",
  "BP CS Sht NCA",
   "BP USB IV, Inc MS",
  "BP Mrts Block NCA MS",
  ]

Теперь мне нужно проверить этот ответ, имея в виду, что, если я удаляю повторяющиеся значения из первого ответа, это будет мой новый ответ (полученный из опроса о различных значениях).

Все эти значения являются динамическими.

Мой подход до сих пор:

Во-первых:

  1. Хранение abcName в наборе (Java). Это удалит дубликат.
  2. Теперь сравните его с новым ответом.

    Это неосуществимо, поскольку оба они различного типа.

    Второй:

  3. Хранение abcName в наборе (Java)

  4. сохранить второй ответ в другом наборе (Это будет идти вразрез с целью, как это должно быть в заданном формате)

    Третье:

  5. Хранение abcName в наборе (Java)

  6. преобразовать этот набор в список: это не удается
  7. сохранить второй ответ в списке
  8. Теперь сравните эти два списка

    Есть ли какой-нибудь способ в каратэ, где без использования Java мы можем выполнить это занятие?

1 Ответ

0 голосов
/ 29 октября 2018
* def response = 
"""
[
 "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "BP Part Sht NCA MS",
  "Bay Pond USB, Inc MS",
  "Bay Pond USB, Inc MS",
  "BP USB III Inc MS",
  "BP USB III Inc MS",
  "BP USB III Inc MS",
  "BP USB III Inc MS",
  "BP CS Sht NCA",
  "BP CS Sht NCA",
  "BP CS Sht NCA",
  "BP CS Sht NCA", 
  "BP USB IV, Inc MS",
  "BP Mrts Block NCA MS",
  "BP Mrts Block NCA MS"
]
"""
* json response = new java.util.HashSet(response)
* def expected =
"""
[
  "BP Part Sht NCA MS",
  "Bay Pond USB, Inc MS",
  "BP USB III Inc MS",
  "BP CS Sht NCA",
   "BP USB IV, Inc MS",
  "BP Mrts Block NCA MS",
]
"""
* match response contains only expected
...