Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Thucydides. Автоматически закрывает алерт.


(Stalexmr) #1

Здравствуйте.

Проблема следующая.

Thucydides автоматически закрывает алерт, то есть не нажимает кнопки [Ok] или [Cancel]. Просто закрывает само окно.
Ставил ожидание на алерт, но тест падает с ошибкой по таймауту, что мол алер найти не смог.

В чем может быть проблема?

Заранее, спасибо.


(Руслан) #2
    driver.switchTo().alert().accept(); 

??


(Stalexmr) #3

Да, именно этим и пользуюсь.
Делал как:
Отдельный степ для нажатия кнопки, которая вызывает алерт
Отдельный степ для нажатия на кнопку [ОК] в алерте.

Так вот при таком раскладе, алерт сразу же закрывается.

Засунул нажатия на кнопку алерта в один степ с нажатием на кнопку, которая его вызывает (объяединл все в одном степе) и все получилось.

Хотя для полной отчетности, хотелось бы чтоб нажатия на кнопки в алерте выполнялись отдельным степом.


(Руслан) #4

сделай из каждого по степу, а потом загони в один и вызывай его
примерно так:

@Step
public void click_to_alert()
{
}
@Step
public void accept_alert()
{
}

@Step
public void work_with_alert()
{
click_to_alert();
accept_alert();
}

(heartwilltell) #5

Может лучше продебажить вначале?


(Alexey) #6

Все дело в снятии скриншота. Как вы наверно знаете перед и после каждого степа thucydides снимает скриншот(настройка по умолчанию). Дак вот в степе, после которого открывается алерт необходимо сделать снятие скриншота только при ошибке:
@Step
@Screenshots(onlyOnFailures = true)


(Stalexmr) #7

Спасибо, теперь все отлично!