2015-04-14 3 views
0

В настоящее время я начал использовать selenium 2.0/web-драйвер для тестирования автоматизации для компании, в которой я работаю.new to selenium-webdriver, переключение из одного окна в другое

В настоящее время у меня есть около 20 тестов, разработанных для тестирования, но когда я запускаю тесты, они открывают новое окно браузера для каждого теста.

К сожалению, мне нужна новая регистрационная/регистрационная информация пользователя, которая выполняется в первом тесте, который будет использоваться в остальных тестах, так как я тестирую веб-магазин/корзину покупок.

Вопрос в том, есть ли способ либо остановить открытие всех окон браузера, либо закрыть окно, а затем поместить фокус обратно в первое окно, где новый пользователь зарегистрирован и зарегистрирован? Через делать некоторые исследования, прежде чем писать вопрос здесь я узнал о

driver.getWindowHandles();

, которые я время запуска в регистрации теста и затем

driver.switchTo().window("handle");
который я запущен в секунду и я подумал, что нужно перенести фокус обратно в первое окно.
Я также использую driver.close();, чтобы закрыть дополнительные окна, которые создаются, но я бы предпочел, чтобы они даже не открывались в первую очередь.

+0

Какой браузер вы используете? – Saifur

+0

В настоящее время изучаем это на firefox, но мне нужно будет расширить его до хром, IE 8-11, сафари, а также мобильную эмуляцию. –

ответ

0

Если я правильно понял, что вам нужно - добавьте процедуру с помощью @Before аннотации и внутри этой процедуры откройте драйвер. Затем добавьте процедуру с @After аннотацией и затем закройте драйвер. Внутри ваших тестов (с аннотацией @Test) вам нужно использовать driver.get. В этом случае новые окна не будут открыты.

Смежные вопросы