Как нажать и проверить наличие всплывающего окна (оповещения) - PullRequest
2 голосов
/ 21 июня 2010

Я работаю с селеном. при попытке нажать кнопку он создает всплывающее окно (предупреждение) и не возвращает объект страницы. Из-за этого я не могу использовать «щелчок» в одиночку, так как этот метод ожидает объект страницы и в конечном итоге дает сбой из-за тайм-аута. Я могу использовать «chooseOkOnNextConfirmation ()», но при этом щелкнет всплывающее окно, и я также хочу убедиться, что всплывающее окно действительно появилось. Есть ли метод, который будет нажимать и проверять это предупреждение?

Ответы [ 3 ]

2 голосов
/ 13 июля 2014

Я делаю следующее, чтобы закрыть оповещение (вы можете настроить его, чтобы проверить только всплывающее окно)

def dismissAlert(): 
    result = None
    try:
        alert = browser.switch_to.alert
        alert.dismiss()
        result = True
    except NoAlertPresentException:    
        result = False

    return result
2 голосов
/ 21 июня 2010

для предупреждения вам нужно будет использовать либо

вызов getAlert (), который будет нажимать кнопку ОК в оповещении. Он также вернет текст в оповещении, чтобы вы могли проверить, какое оповещение вы хотите.

таким примером будет

self.assertEqual("An alert",selenium.get_alert());
1 голос
/ 23 июня 2010

насколько я знаю, вы всегда должны использовать в оповещениях

selenium.get_confirmation ()

из документа Python: если подтверждение генерируется, но вы делаетене используйте его с getConfirmation, следующее действие Selenium завершится неудачей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...