Selenium — інструмент для автоматизації роботи в web-браузері. Selenium надає застосунок запису/відтворення, що дозволяє створювати тести вебзастосунків без вивчення мов програмування. Інструмент також надає власну предметно-орієнтовану мову (Selenese) задля написання тестів на таких мовах як C#, Groovy, Java, Perl, PHP, Python, Ruby та Scala.

Selenium
Тип тестування програмного забезпечення
Операційна система багатоплатформний
Мова програмування Java
Ліцензія Apache License 2.0
Репозиторій https://github.com/SeleniumHQ/, https://github.com/SeleniumHQ/selenium
Вебсайт seleniumhq.org

Найчастіше використовується для автоматизації Web-тестування.

Історія ред.

Selenium як проєкт був розпочатий у червні 2004 року, а вже в грудні 2004 року він став відкритим. Спочатку проєкт вела компанія ThoughtWorks, науковим керівником якої є Мартін Фаулер.

Перший Selenium (Selenium RC) складався з сервера, який запускав браузер і завантажував у ньому JavaScript код, що називався Selenium Core. Selenium Core слухав команди сервера, і виконував їх над застосунком що тестується. Щоб обійти політику одного походження, яка забороняла скриптам з різних доменів отримувати дані одне від одного для уникнення XSS використовувалось два способи. Перший — запускати браузер з підвищеними повноваженнями, що дозволяло йому ігнорувати цю політику. Другий — «проксі ін'єкція»: запуск в сервері Selenium також проксі-сервера, через який браузер отримує застосунок що тестується, але з доданим кодом Selenium Core. Таким чином Selenium Core та застосунок що тестується для браузера походитимуть з одного домену.[1]

З виходом Selenium 2.0 з'явилась технологія WebDriver, яка за допомогою використання вбудованих у браузери API для автоматизації може керувати браузером напряму, не емулюючи дії користувача.[2] Проте для браузерів що не мають такого API може досі застосовуватись Selenium Core.

Загальні відомості ред.

Selenium це об'єктно-орієнтований Java-додаток, який може аналізувати файли певної структури для того, щоб знаходити в них команди для маніпуляції браузером і команди для виконання певних дій і перевірок. Крім того, команди Selenium можна викликати з наступних мов програмування: Java, C#, Ruby, Haskell, JavaScript, Objective-C, Perl, PHP, Python, R[3]. Selenium підтримується Microsoft Internet Explorer, Google Chrome, Mozilla Suite і Mozilla Firefox для Microsoft Windows, Linux і Apple Macintosh.

В рамках проєкту Selenium також випускається інструмент Selenium IDE, який являє собою версію досить популярної бібліотеки Selenium в GUI-оболонці. Реалізовано це у вигляді розширення до браузера Firefox, розміром близько 240 Кб, включаючи сам Selenium. Цей інструмент дозволяє записувати і відтворювати скрипти, що являють собою звичайні HTML-сторінки з однією таблицею, яка містить команди.

Компоненти ред.

  • Selenium IDE — інтегроване середовище розробки у вигляді Firefox-додатка, який дозволяє записувати та відтворювати тести в Firefox 2+.
  • Selenium Client API — набір API, що дозволяє писати тести на Java, C#, Ruby, JavaScript та Python.
  • Selenium Remote Control — це клієнт / серверна система, яка дозволяє керувати веббраузерами локально або на іншому комп'ютері, використовуючи практично будь-яку мову програмування та тестування системи.
  • Selenium WebDriver — драйвер що дозволяє керувати веббраузером за допомогою Selenese або API.
  • Selenium Grid — дозволяє одночасно запускати тести на кількох серверах та типах веббраузерів зменшуючи час на тестування.

Підтримувані платформи ред.

Microsoft Windows
  • Firefox 2, 3, 3.x
  • Internet Explorer 6, 7, 8
  • Safari 2,3
  • Opera 8, 9, 10
  • Google Chrome
Mac OS X
GNU/Linux

Інші браузери — часткова підтримка, в залежності від ОС, браузера і налаштувань безпеки браузера.

Див. також ред.

Примітки ред.

  1. Selenium 1 (Selenium RC) — Selenium Documentation. Архів оригіналу за 22 травня 2016. Процитовано 28 травня 2016.
  2. Selenium WebDriver — Selenium Documentation. Архів оригіналу за 29 травня 2016. Процитовано 28 травня 2016.
  3. Platforms Supported by Selenium. www.seleniumhq.org. Архів оригіналу за 21 жовтня 2016. Процитовано 25 жовтня 2016.

Посилання ред.

  1. Основний сайт проєкту Selenium [Архівовано 11 квітня 2012 у Wayback Machine.]
  2. Selenium IDE: автоматизоване тестування вебдодатків за 15 хвилин [Архівовано 11 грудня 2011 у Wayback Machine.]
  3. Selenium Certification [Архівовано 7 травня 2019 у Wayback Machine.]