Есть ли подход для ожидания завершения процесса в течение 5 минут - PullRequest
0 голосов
/ 06 марта 2019

Я автоматизирую с использованием селена Java, и действие под названием «предварительный просмотр» отправит процесс извлечения (финансовых данных) и перейдет на стадию, называемую «предварительный просмотр». Обычно для завершения процесса «предварительного просмотра» требуется 2-5 минут, а этап меняется на «черновик».

Явное ожидание согласно этому ответу - один из методов. Подождите 5 минут, пока появится элемент или процесс не завершится

Есть ли лучший подход? Предлагает ли Serenity что-то сверх Selenium?

Ответы [ 2 ]

2 голосов
/ 06 марта 2019

Вы можете использовать явное ожидание в течение 1 минуты и использовать его в течение цикла. Например,

WebElement element = driver.findElement(By(Identifier for DRAFT Status));
WebDriverWait wait = new WebDriverWait(driver, 60);
while (element == null) {
    element = wait.until(ExpectedConditions.elementToBeClickable(By(Identifier for DRAFT Status)); 
}
0 голосов
/ 08 марта 2019

В классических объектах Serenity Page:

withTimeoutOf(Duration.ofMinutes(5)).waitFor(DRAFT_STATUS_ELEMENT);

В сценарии:

WaitUntil.the(DRAFT_STATUS_ELEMENT, isVisible()).forNoMoreThan(300).seconds())
...