#java #rest-assured
#java #будьте уверены
Вопрос:
В принципе, я хотел бы подождать, пока состояние платежа не будет возвращено. Я не хочу использовать функцию сна потока. Я использовал ожидание, хотя получаю сообщение об ошибке. У вас есть какие-либо другие предложения?
Примечание: я также пробовал с 20 секунд. 10 секунд вполне достаточно для проверки.
public static Response verifyLineItemIsRefunded(Response rawRes) {
await().timeout(10, SECONDS).untilAsserted(() -> assertThat("text",
convertRawToJson(rawRes)
.get("returnInfo[0].items[0].paymentState")
.toString()
.equalsIgnoreCase("Refunded")));
logInfo(String.format("Line item is refunded"));
return rawRes;
}
ошибка:
org.awaitility.core.ConditionTimeoutException: Assertion condition defined as a lambda expression in com.vw.ce.api.orders.utils.FulfillmentHelper that uses io.restassured.response.Response Profile not yet updated within 10 seconds.
Комментарии:
1. Чего ты ждешь? Похоже, вы ждете, пока тело ответа не изменится? Но как? Разве вы не должны отправить еще один запрос и снова проверить ответ в течение этих 10 секунд?
2. Насколько я понимаю, эта функция работает так, что во время ожидания assertThat функция проверяет, возвращены ли состояния оплаты или нет. Пожалуйста, поправьте меня, если я ошибаюсь, если у вас нет какого-либо метода для выполнения этого?