Есть ли самый простой способ перенести код Selenium 1.0 в WebDriver?

У меня есть старая среда автоматизации тестирования, разработанная с использованием Selenium 1.0, и теперь я хочу перенести мой код в WebDriver.

Есть ли самый простой способ сделать эту миграцию?

Я переопределил большинство методов, таких как type, click, getText, getSelectedLabel, assert и т. Д. И т. Д. Я вижу, что единственный способ - переписать все методы заново, я уже начал этот процесс, но если я продолжу с тем же метод Это займет много дней для меня.

Пожалуйста, предложите, если у кого-нибудь есть лучший подход.

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

2 ответа

Решение

Это совершенно разные технологии. Нет никакого способа перенести их на селен 2 как таковой.

К счастью, в последних выпусках Selenium реализовано так называемое "WebDriver Backed Selenium", так что технически, если вы используете эти тесты, он неявно запускает их "как" тесты WebDriver.

Кроме этого нет легкого пути.

У меня была та же проблема - мы сейчас переносим весь наш набор регрессии на S2 :)

В документации по Webdriver они объясняют метод начала перехода с Selenium RC на Selenium WebDriver. По сути, создает объект селена следующим образом:

WebDriver driver = new FirefoxDriver();
Selenium selenium = new WebDriverBackedSelenium(driver, "http://www.yoursite.com");

Основная проблема с этой миграцией (вместо изменения всего кода) заключается в ожидании загрузки страницы. Как говорится, команда WaitForPageToLoad возвращает слишком рано. GetEval - это еще одна команда, которую вы должны изменить. Я думаю, что лучший подход состоит в том, чтобы создавать функции с основными командами, которые отличаются от Selenium RC и Selenium WebDriver, и, как только все "заработает", продолжайте модифицировать ваш код, пока Selenium RC не появится. Так мы осуществили миграцию, и у нас было много строк кода.

Это ссылка, где они объясняют, как начать: http://www.seleniumhq.org/docs/appendix_migrating_from_rc_to_webdriver.jsp

Другие вопросы по тегам