Учитывая, что вы говорите о диалоговом окне, созданном на javascript, я действительно должен спросить, есть ли смысл в самом деле их тестировать?
В основном это равнозначно тестированию функциональности браузера
Если вы говорите о типе всплывающих окон, описанных здесь http://wiki.openqa.org/display/WTR/JavaScript+Pop+Ups, то я думаю, что первое решение переопределения javascript может быть вашим лучшим кроссплатформенным вариантом.
Проблема с модальными диалогаминапример, это то, что они по сути являются пользовательским интерфейсом, даже если это происходит на уровне ОС, он больше не находится внутри DOM браузера, и, следовательно, вам нужны инструменты, специфичные для ОС (например, вещи, зависящие от win32ole, такие как autoit)для создания необходимого взаимодействия с собственным пользовательским интерфейсом и кнопками нажатия, отправки нажатий клавиш и т. д. Большинство представленных решений, как мне кажется, должны работать с FF на окнах (с правильным переименованием ожидаемых заголовков окон и т. д.), но не на Mac или *ОС nix.Это означает, что вам нужно отдельное решение для каждой ОС, что является проблемой.
Может быть, просто будет проще убедиться, что вы можете найти подходящий материал, который будет запускать событие в HTML страницы, так что вы знаете,событие будет запущено, а затем переопределит все, так что это не так.В конце концов, ваша задача не проверять, что браузер открывает локальный диалог, когда в javascript вызывается что-то вроде alert('This is an alert box')
.Вы обеспокоены тем, что в HTML данный элемент закодирован для запуска необходимого события, например, что есть что-то вроде onClick = 'javascript:x = confirm('Do you really want to do this');"
, связанное с элементом