selen framework

20
Хаёров Александр [email protected] @hayorov Selen framework

Upload: alexander-hayorov

Post on 22-Jun-2015

1.095 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Selen framework

Хаёров Александр[email protected]

@hayorov

Selen framework

Page 2: Selen framework

Что такое Selenium?

КРУТАЯ ШТУКА

написан на java

Работает с браузерами

Автоматизирует тестирование

WebDriver

Связана с WEB

Исполняет мечты

Бывает IDE Работает везде

Функциональные тестынужен каждому

Разговаривает на многих языках

у кого-то все еще RC ))

Многообразие bindings

open sourceдовольно новый инструмент

Black box testing

Уже популярный

Page 3: Selen framework

Что такое Selenium?NO Selenium IDENO Selenium RC

ONLY WebDriver

В случае появления скуки смотрим только на эту экранную область

--->

Page 4: Selen framework

Что автоматизировать?

- регрессионное тестирование- функциональное тестирование- приемочное тестирование- тестирование совместимости

Page 5: Selen framework

PHP + Selenium

Оно работает!

Page 6: Selen framework

Selenium и другие языки

JavaC#

RubyPyton

Perl

Page 7: Selen framework

PHP bindings for WebDriver

1.designed to work with PHPUnitbuilt-ins for running tests at Sauce Labs

2.Yii framework extensionallows creating functional webdriver tests

3.This is FacebookThis is Facebook x2

Page 8: Selen framework

«из готового»: Bromine

 + management система

 + Sauce Labs интеграция проекты, требования, дефекты

 + управление запуском тестов

 - Selenium RC  - нет многопоточности ? - плохая реализация тестов

 - весь сырой

 написан на PHP (PHPCake frm) + MySQL

 ! есть поднятая виртуалка для новичков

Page 9: Selen framework

«из готового»: Codeception

+ интересная реализация тестов+ универсальный + документирован + симпатичный дизайн сайта

 - Selenium RC  - нет многопоточности ?

 - Selenium как один из модулей

 написан на PHP

Page 10: Selen framework

Selen

 написан на PHP + sqlite3

 использует php-webdriver-binding

  распространяется под Apache License

github.com/hayorov/Selen

Page 11: Selen framework

Selen: архитектураSelenium 2 Grid Hub Nodes

selenCore

storagedaemon DB

processor

webdriver-bindings

plannerCI module

API module

Selen ManagerTest jobs manager

reports

3 part systems communication

module

managerbasics

Page 12: Selen framework

Selen   структура тест комплекта

 + все довольно просто и структурировано

Page 13: Selen framework

Selen: тесты002.test

Базовая секция

Секция входных данных

Доступные группы элементов

Соотношение элемент-группа

Описание свойств элементов

  + сценарии и конфигурации тестов в текстовом виде

  + конфигурация в INI формате

Page 14: Selen framework

Selen: тесты

Название теста

Соответствующий тестовый сценарий

Количественный критерий успеха

Уникальный номер теста

В основной секции определены базовые параметры и значения переменных требуемые для запуска теста.

Page 15: Selen framework

Уникальный номер теста

Подробнее о конфигурации

Секция содержит массив разнообразных входных данных

Имя параметра = значение

Параметр может принимать значение случайным образом из списка, значения которого разделены символом «^^»

Допустимые варианты указаны в виде комментариев

Значением может быть и специальная функция, со своими входными параметрами. В этом примере эта функция возвращает случайный сгенерированный домен в зоне RU (2 уровня)

Page 16: Selen framework

Тестовый сценарий

В сценарии могут использоваться паттерны –часто повторяющие действия вынесенные в отдельную часть

Важной составляющей сценария должна являться хорошая документированность

Так было раньше, буквально месяц назад…

Page 17: Selen framework

Так было раньше, буквально месяц назад…

Тестовый сценарий

мое видение page orientated подхода

Выполняемые действия понятны по методам

Page 18: Selen framework

Selen: хвалимся+ открытый+ на распространенном языке+ многопоточность+ Webdriver && Selenium Grid+ нет xUnit и прочих тяжёлых монстров+ sqlite3 или mysql

Это будет :Web UIразные форматы выгрузки отчетовсопряжение с CI (Jenkins ?)

 

Page 19: Selen framework

Что такое Selenium?

Попробуем что-нибудь запустить из тестов…

Page 20: Selen framework

Хаёров Александр

вопросы и … спасибо

[email protected] @hayorov