# БИБЛИОТЕКА ..Курсы ..Redmine Системная инженерия Стейкхолдеры Управление Критическая цепь Linux Информация Социальные связи Саморазвитие Логика, интеллект Политэкономия Сумма технологии АНАЛИТИКА ..Ресурсы ..ПО для Аналитика ..Кто аналитики? ..Бизнес-процесс ..Требования ..Уровни и типы ..Источники Нотации Архитектура РАЗРАБОТКА ..Ресурсы ..Цикл разработки ПО ..Waterfall ..RUP ..Agile ..Kanban ..Continuous Integration git Frontend HTTP/REST Apache web-server Регулярные выражения Javascript Perl ТЕСТИРОВАНИЕ ..Ресурсы ..QA и QC ..Цикл тестирования ..1 Тест-анализ ..2 Тест план ..3 Тест-дизайн и покрытие ..Уровни тестирования ..Виды тестирования ..Баг-репорт ..Шаблоны документов XPATH Безопасность Нагрузочное Android Автоматизация Selenium WebDriver Генератор ИНН БАЗЫ ДАННЫХ SQL MongoDB
Эта страница:
Ресурсы Selenium для Perl Selenium для Python Selenium для Ruby
Ещё в этом разделе:
ТЕСТИРОВАНИЕ XPATH Безопасность Нагрузочное Android Автоматизация Selenium WebDriver Генератор ИНН и т.п. Различные расчёты
Другие разделы:
# АНАЛИТИКА MONGO DB SQL РАЗРАБОТКА БИБЛИОТЕКА ТЕСТИРОВАНИЕ
Selenium WebDriver
Ресурсы
Selenium для Perl
  1. Устанавливаем Java с https://www.java.com/en/download если ещё не установлена (текущую версию Java можно узнать командой в консоли java -version);
  2. Cкачиваем самую свежую версию Selenium RC Server с https://docs.seleniumhq.org/download/ в разделе "Selenium Server (formerly the Selenium RC Server)";
  3. Запускаем Selenium Server командой (поменяв имя файла на своё): java -jar selenium-server-standalone-2.44.0.jar Если же хотим использовать Chrome в качестве тестового браузера, то скачиваем свежий драйвер с http://sites.google.com/a/chromium.org/chromedriver/ и кладём его в какую-нибудь папку, а Selenium Server запускаем командой: java -Dwebdriver.chrome.driver=[path-to-chromedriver] -jar [path-to-selenium_standalone_serv] Пример: java -Dwebdriver.chrome.driver=/home/progforce/Desktop/auto_testing/chromedriver -jar selenium-server-standalone-2.44.0.jar>
  4. Инструкция по использованию Perl для написания Selenium-тестов для WebDriver: https://metacpan.org/pod/Selenium::Remote::Driver sudo cpan >force install Selenium::Remote::Driver Установка всякой перлятины - вся последовательность указана тут: https://github.com/gempesaw/Selenium-Remote-Driver: sudo apt-get install cpanminus sudo cpanm -v git://github.com/gempesaw/Selenium-Remote-Driver.git@cpan
  5. Не обязательно использовать standalone server, можно пользоваться встроенными для разных браузеров, например
    use Selenium::Firefox; ... my $driver = Selenium::Firefox->new; ...
    или
    use Selenium::Chrome; ... my $driver = Selenium::Chrome->new; ...
Selenium для Python
  • Установить установщик python-пакетов PIP: sudo apt-get install python-pip
  • Установить библиотеку Selenium для Python при помощи PIP: sudo pip install selenium
  • Для тестов под Firefox
    • загрузить архив с geckodriver для вашей платформы, распаковать исполняемый файл и поместить его в PATH
    • для проверки что всё работает выполнить простейший питоновский скрипт: from selenium import webdriver from selenium.webdriver.common.keys import Keys driver = webdriver.Firefox() driver.get("http://www.python.org") assert "Python" in driver.title elem = driver.find_element_by_name("q") elem.send_keys("pycon") elem.send_keys(Keys.RETURN) assert "No results found." not in driver.page_source driver.close()
  • Для тестов под Chrome:
    1. Устанавливаем Chrome или Chromium-browser
    2. Скачиваем свежий хромдрайвер с https://sites.google.com/a/chromium.org/chromedriver/ и кладём его в какую-нибудь папку.
    3. Удостоверяемся, что скачанный файл "chromedriver" имеет права на чтение и запись и помечен как исполняемый
      chromderiver file properties and permissions
    4. В python-скрипте в заголовке надо заиспользовать следующие строки: import os
      from selenium import webdriver

      В теле функции заиспользовать webdriver Chrome: chromedriver = "<абсолютный путь к файлу chromedriver>"
      os.environ["webdriver.chrome.driver"] = chromedriver
      driver = webdriver.Chrome(chromedriver)

      Таким образом, простейший скрипт будет выглядеть, например, вот так: import os from selenium import webdriver from selenium.webdriver.common.keys import Keys chromedrvr = "/home/username/Downloads/chromedriver" os.environ["webdriver.chrome.driver"] = chromedrvr driver = webdriver.Chrome(chromedrvr) driver.get("http://www.python.org") assert "Python" in driver.title elem = driver.find_element_by_name("q") elem.send_keys("pycon") elem.send_keys(Keys.RETURN) assert "No results found." not in driver.page_source driver.close()
Selenium для Ruby
  • gem install selenium-webdriver
  • Наипримитивнейший скрипт автотеста на Ruby будет выглядеть так: require "selenium-webdriver" ### CROMHEDIRVER # This string is required if you want to use chromedriver executable placed in specific place # Dir.pwd takes current directory Selenium::WebDriver::Chrome::Service.executable_path = File.join(Dir.pwd, 'chromedriver') driver = Selenium::WebDriver.for :chrome, :switches => %w[--ignore-certificate-errors --disable-popup-blocking --disable-translate] ### FRIEFXO # use this if you want to run Firefox #driver = Selenium::WebDriver.for :firefox driver.navigate.to "http://google.com" element = driver.find_element(:name, 'q') element.send_keys "Hello WebDriver!" element.submit puts driver.title driver.get 'http://the-internet.herokuapp.com/' expect(driver.title).to eql 'The Internet' driver.quit