Есть ли способ подтвердить и отклонить запрос после опроса в karate?

#automated-tests #karate #junit5

#karate

Вопрос:

У меня есть запрос, в котором я получаю обработку или отправляю в параметре ответа, если запрос находится в процессе или передан соответственно. Я могу опросить и получить, является ли статус «Обработка» или «Отправлено», но после этого я не могу отклонить запрос, если я все еще не получаю ожидаемый статус после опроса 5 раз. Как я могу отклонить запрос после того, как определенные попытки не дают мне ожидаемого ответа?

Ответ №1:

Ответ в вашем вопросе,

Я предполагаю, что вы проводите опрос с использованием функции js, если это так, вы можете добавить логическое return значение из этого, если условие не выполнено return false или если условие выполнено return true , затем подтвердите значение, возвращенное из вашего файла функций.

 * def pollingFunc =
"""
function(x) {
     // your polling logic which retrives status
     if (status == x) {
      return true;
     } 
     else{
      return false;
     } 
} 
"""
  

В функции

 * def statusFound = pollingFunc("Processed" )
* assert (statusFound == true) 
  

Если ожидаемый статус не получен после опроса assert , тест не пройдет