Selenium

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

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

Найчастіше використовується для автоматизації 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.]