SlideShare uma empresa Scribd logo
1 de 31
Введение в автоматизацию
тестирования
Автоматизация тестирования (test
automation) – набор техник, подходов и
инструментальных средств, позволяющий
исключить человека из выполнения
НЕКОТОРЫХ задач в процессе
тестирования.
Инструментальное средство
автоматизированного тестирования
(test automation tool) – программа (или
набор программ), позволяющая
создавать, редактировать, отлаживать и
выполнять автоматизированные тесты, а
также собирать статистику их выполнения.
Одной из наиболее распространѐнных и
простых для понимания технологий
автоматизации тестирования является
технология Record&Playback («Записать
и воспроизвести»).
Суть еѐ заключается в том, что средство
автоматизации тестирования позволяет
выполнить с тестируемым приложением
некоторый набор действий, которые
будут записаны на специальном языке
программирования, а затем могут быть
воспроизведены.
Selenium IDE – интегрированная среда для
разработки и выполнения скриптов, представленная
в виде плагина для браузера FireFox.
Свежая версия всегда доступна
по адресу:
http://seleniumhq.org/projects/ide/
Selenium IDE поддерживает
Операционные системы:
Windows,
Linux,
OS X,

Языки программирования:
PHP,
Perl,
Java,
C#,

Solaris

Python,

Ruby

Браузеры:
Firefox,

IE ,

Safari ,

Opera,

Chrome
После установки плагин Selenium IDE доступен в
браузере FireFox в разделе «Инструменты» («Tools»):
Поле «Command» содержит команду («что необходимо сделать»)

Поле «Target»
указывает
целевой
элемент («с
чем это
сделать»)

Поле «Value» содержит значение, с которым выполняется некоторая
операция.
1. Открыть
«http://tut.by»

2. Кликнуть «Все
ресурсы»

3. Кликнуть
«Новости
IT»
4. Ввести
«ISSOFT»

5. Кликнуть «Найти»
Поле «Command» содержит указание того, что необходимо
выполнить на данном шаге теста.
Примеры действий (actions):

open

click
clickAndWait

type
Ошибка (невозможность) выполнения любой
из этих команд приводит к остановке теста!
Проверки используются для анализа состояния вебориентированного приложения.
Например, можно проверять наличие того или иного
элемента страницы, значение того или иного поля и т.п.
Команды, выполняющие проверку, делятся на
два больших класса:
• начинающиеся с assert;

• начинающиеся с verify.

Ошибка assert =
тест
останавливается.

Ошибка verify =
протоколируется
факт наличия
проблемы и тест
продолжается.
Существует ещѐ один класс команд, (начинающихся со
слов waitFor или заканчивающихся словами andWait).
Эти команды предназначены для работы с
элементами, появление или изменение состояния
которых требует некоторого времени.
Ошибка (невозможность) выполнения такой
команды приводит к остановке теста!
За ходом и результатом выполнения тестов можно
следить с помощью поля log, в котором отражаются
все выполняемые Selenium IDE действия.
Поле target
указывает, с каким
элементом следует
выполнить
действие.
Указание на элемент, с которым
необходимо выполнить
действие, производится при
помощи т.н. «локаторов»
(locator).
Формат локатора таков:
LocatorType = Argument
Локаторы бывают следующих типов:
•
•
•
•

id = ElementID
name = ElementName
link = LinkText
xpath = XPath
Локатор вида
id = ElementID
можно (хоть и
НЕЖЕЛАТЕЛЬНО)
записывать просто в виде
ElementID.

Идентификатор элемента
нужно смотреть в HTML-коде
страницы.
Локатор вида
name = ElementName

тоже можно (хоть и ТОЖЕ
НЕЖЕЛАТЕЛЬНО)
записывать просто в виде
ElementName.
Имя элемента тоже нужно
смотреть в HTML-коде
страницы.
Локатор вида
link = LinkText
НЕЛЬЗЯ записывать
просто в виде LinkText.

Текст ссылки чаще всего
виден «невооружѐнным
глазом», но если посмотреть
его в коде – хуже не будет.
Лучше НЕ использовать
сокращѐнную форму
записи локаторов (это
может привести к
неоднозначности
определения
элемента), но если очень
хочется…
Можно сокращать
локаторы типа id или
name, но НЕЛЬЗЯ
сокращать локаторы типа
link.
Локатор вида
xpath = XPath

является самым универсальным, но требует
понимания XML и непосредственно XPath.
Почитать можно обо всѐм этом здесь:
http://www.w3schools.com/xpath/
http://www.w3.org/TR/xpath/
Сразу же после запуска
Selenium IDE находится в
режиме записи
теста, выключать и повторно
включать который можно
кнопкой в правом верхнем
углу окна Selenium IDE.
Запись имеет смысл
приостанавливать, если вы
выполняете действия, не
относящиеся к тесту.
Для выполнения записанного
теста есть несколько
элементов в левом верхнем
углу экрана:
• регулятор скорости
выполнения;
• кнопка выполнения всех
тестов;
• кнопка выполнения
текущего теста.
В процессе воспроизведения
теста Selenium IDE в
реальном времени
показывает, успешно ли
выполнена та или иная
команда:
• подсветкой команды
зелѐным или розовым в
списке команд;
• сообщениями в логе.
Тесты, с которыми
впоследствии можно будет
продолжить работу в
IDE, сохраняются в виде
обычной HTML-страницы с
определѐнной структурой.
Для ускорения просмотра их
можно открывать в браузере
как обычные страницы.
Несколько тестов (сценарий)
можно сохранить в виде
«тест-сьюта» (test-suite).
У Selenium IDE есть один
серьѐзный недостаток –
тесты в нѐм «линейны» и
примитивны. Всѐ же в нѐм
нет полноценного языка
программирования.
Поэтому для действительно
серьѐзной работы тест нужно
экспортировать в
соответствующий формат.

Mais conteúdo relacionado

Mais procurados

Getting Started with React.js
Getting Started with React.jsGetting Started with React.js
Getting Started with React.jsSmile Gupta
 
User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?Maveryx
 
Pairwise testing technique-Made easy
Pairwise testing technique-Made easyPairwise testing technique-Made easy
Pairwise testing technique-Made easySamee Ahmed Indikar
 
위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례SangIn Choung
 
How to apply AI to Testing
How to apply AI to TestingHow to apply AI to Testing
How to apply AI to TestingSAP SE
 
Java Secure Coding Practices
Java Secure Coding PracticesJava Secure Coding Practices
Java Secure Coding PracticesOWASPKerala
 
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Simplilearn
 
[AUG]개발자와 QA가 상생하는 테스트 프로세스
[AUG]개발자와 QA가 상생하는 테스트 프로세스[AUG]개발자와 QA가 상생하는 테스트 프로세스
[AUG]개발자와 QA가 상생하는 테스트 프로세스철민 신
 
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)SangIn Choung
 
Requierement traceability matrix
Requierement traceability matrixRequierement traceability matrix
Requierement traceability matrixLuthfia Ulinnuha
 
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXLOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXEnkitec
 
Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...
Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...
Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...Edureka!
 
Cagando Datos con APEX_DATA_PARSER
Cagando Datos con APEX_DATA_PARSERCagando Datos con APEX_DATA_PARSER
Cagando Datos con APEX_DATA_PARSERRodolfoRodriguez161
 
Data driven Automation Framework with Selenium
Data driven Automation Framework with Selenium Data driven Automation Framework with Selenium
Data driven Automation Framework with Selenium Edureka!
 

Mais procurados (20)

Getting Started with React.js
Getting Started with React.jsGetting Started with React.js
Getting Started with React.js
 
User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?
 
Pairwise testing technique-Made easy
Pairwise testing technique-Made easyPairwise testing technique-Made easy
Pairwise testing technique-Made easy
 
위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례위험기반테스트접근 테스트계획 사례
위험기반테스트접근 테스트계획 사례
 
How to apply AI to Testing
How to apply AI to TestingHow to apply AI to Testing
How to apply AI to Testing
 
Java Secure Coding Practices
Java Secure Coding PracticesJava Secure Coding Practices
Java Secure Coding Practices
 
Selenium-Locators
Selenium-LocatorsSelenium-Locators
Selenium-Locators
 
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
 
[AUG]개발자와 QA가 상생하는 테스트 프로세스
[AUG]개발자와 QA가 상생하는 테스트 프로세스[AUG]개발자와 QA가 상생하는 테스트 프로세스
[AUG]개발자와 QA가 상생하는 테스트 프로세스
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
 
Requierement traceability matrix
Requierement traceability matrixRequierement traceability matrix
Requierement traceability matrix
 
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXLOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
 
Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...
Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...
Xpath in Selenium | Selenium Xpath Tutorial | Selenium Xpath Examples | Selen...
 
Cagando Datos con APEX_DATA_PARSER
Cagando Datos con APEX_DATA_PARSERCagando Datos con APEX_DATA_PARSER
Cagando Datos con APEX_DATA_PARSER
 
Data driven Automation Framework with Selenium
Data driven Automation Framework with Selenium Data driven Automation Framework with Selenium
Data driven Automation Framework with Selenium
 
Selenium IDE LOCATORS
Selenium IDE LOCATORSSelenium IDE LOCATORS
Selenium IDE LOCATORS
 
Introduction to C# Programming
Introduction to C# ProgrammingIntroduction to C# Programming
Introduction to C# Programming
 
Rest api with Python
Rest api with PythonRest api with Python
Rest api with Python
 
Laravel Presentation
Laravel PresentationLaravel Presentation
Laravel Presentation
 

Destaque

(Seleniumcamp) Selenium IDE как артефакт пикника на обочине
(Seleniumcamp) Selenium IDE как артефакт пикника на обочине(Seleniumcamp) Selenium IDE как артефакт пикника на обочине
(Seleniumcamp) Selenium IDE как артефакт пикника на обочинеAlexei Lupan
 
Selenium: начало работы
Selenium: начало работыSelenium: начало работы
Selenium: начало работыPaul Stashevsky
 
XPath локаторы в Selenium WebDriver
XPath локаторы в Selenium WebDriverXPath локаторы в Selenium WebDriver
XPath локаторы в Selenium WebDriverИлья Кожухов
 
Webium: Page Objects in Python
Webium: Page Objects in PythonWebium: Page Objects in Python
Webium: Page Objects in PythonIgor Khrol
 
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...QAFest
 
Бытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчикаБытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчикаMikalai Alimenkou
 
Winium — это как Selenium, только под Windows
Winium — это как Selenium, только под WindowsWinium — это как Selenium, только под Windows
Winium — это как Selenium, только под WindowsSQALab
 
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Igor Khrol
 
Мелочь пузатая или Объем тест кейса против его содержательности
Мелочь пузатая или Объем тест кейса против его содержательностиМелочь пузатая или Объем тест кейса против его содержательности
Мелочь пузатая или Объем тест кейса против его содержательностиAlexei Lupan
 
Тренировка служебных тестировщиков
Тренировка служебных тестировщиковТренировка служебных тестировщиков
Тренировка служебных тестировщиковSQALab
 
Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...
Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...
Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...GTestClub
 

Destaque (11)

(Seleniumcamp) Selenium IDE как артефакт пикника на обочине
(Seleniumcamp) Selenium IDE как артефакт пикника на обочине(Seleniumcamp) Selenium IDE как артефакт пикника на обочине
(Seleniumcamp) Selenium IDE как артефакт пикника на обочине
 
Selenium: начало работы
Selenium: начало работыSelenium: начало работы
Selenium: начало работы
 
XPath локаторы в Selenium WebDriver
XPath локаторы в Selenium WebDriverXPath локаторы в Selenium WebDriver
XPath локаторы в Selenium WebDriver
 
Webium: Page Objects in Python
Webium: Page Objects in PythonWebium: Page Objects in Python
Webium: Page Objects in Python
 
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
QA Fest 2014. Алексей Лупан. Не тест-кейсы красят тестировщика, а...
 
Бытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчикаБытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчика
 
Winium — это как Selenium, только под Windows
Winium — это как Selenium, только под WindowsWinium — это как Selenium, только под Windows
Winium — это как Selenium, только под Windows
 
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17
 
Мелочь пузатая или Объем тест кейса против его содержательности
Мелочь пузатая или Объем тест кейса против его содержательностиМелочь пузатая или Объем тест кейса против его содержательности
Мелочь пузатая или Объем тест кейса против его содержательности
 
Тренировка служебных тестировщиков
Тренировка служебных тестировщиковТренировка служебных тестировщиков
Тренировка служебных тестировщиков
 
Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...
Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...
Grammarly Test Club#2. Выступление Алексея Лупана (SysIQ, Inc.): "Без тест-ке...
 

Semelhante a Автоматизация и Selenium IDE

Руководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из SeleniumРуководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из SeleniumUladzimir Kryvenka
 
метод организации репозитория исходного кода
метод организации репозитория исходного кодаметод организации репозитория исходного кода
метод организации репозитория исходного кодаSergii Shmarkatiuk
 
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGDataArt
 
ClubQA #2. Unit testing and TDD
ClubQA #2. Unit testing and TDDClubQA #2. Unit testing and TDD
ClubQA #2. Unit testing and TDDClub QA Kostroma
 
Unit testing and TDD
Unit testing and TDDUnit testing and TDD
Unit testing and TDDIosif Itkin
 
Построение систем автоматического протоколирования Си/Си++ кода
Построение систем автоматического протоколирования Си/Си++ кодаПостроение систем автоматического протоколирования Си/Си++ кода
Построение систем автоматического протоколирования Си/Си++ кодаTatyanazaxarova
 
Getting Tested: методология интеграционного тестирования
Getting Tested: методология интеграционного тестированияGetting Tested: методология интеграционного тестирования
Getting Tested: методология интеграционного тестированияAlexander Byndyu
 
основы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программированиеосновы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программированиеYakubovichDA
 
Плюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизниПлюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизниz-tech
 
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?sqadays8
 
Отладка веб-приложений на Javascript
Отладка веб-приложений на JavascriptОтладка веб-приложений на Javascript
Отладка веб-приложений на JavascriptDenis Latushkin
 
Введение в Microsoft Silverlight 3.0
Введение в Microsoft Silverlight 3.0Введение в Microsoft Silverlight 3.0
Введение в Microsoft Silverlight 3.0akrakovetsky
 
Автоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюАвтоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюSQALab
 
Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...jazzteam
 
Приемочные тесты на огурце
Приемочные тесты на огурцеПриемочные тесты на огурце
Приемочные тесты на огурцеAlexander Byndyu
 
Custom Language Plugin for JetBrains IDEA
Custom Language Plugin for JetBrains IDEACustom Language Plugin for JetBrains IDEA
Custom Language Plugin for JetBrains IDEAAlexander Zastashkov
 

Semelhante a Автоматизация и Selenium IDE (20)

Руководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из SeleniumРуководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из Selenium
 
метод организации репозитория исходного кода
метод организации репозитория исходного кодаметод организации репозитория исходного кода
метод организации репозитория исходного кода
 
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
 
ClubQA #2. Unit testing and TDD
ClubQA #2. Unit testing and TDDClubQA #2. Unit testing and TDD
ClubQA #2. Unit testing and TDD
 
Unit testing and TDD
Unit testing and TDDUnit testing and TDD
Unit testing and TDD
 
UI+unit testing in iOS
UI+unit testing in iOSUI+unit testing in iOS
UI+unit testing in iOS
 
Построение систем автоматического протоколирования Си/Си++ кода
Построение систем автоматического протоколирования Си/Си++ кодаПостроение систем автоматического протоколирования Си/Си++ кода
Построение систем автоматического протоколирования Си/Си++ кода
 
Getting Tested: методология интеграционного тестирования
Getting Tested: методология интеграционного тестированияGetting Tested: методология интеграционного тестирования
Getting Tested: методология интеграционного тестирования
 
основы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программированиеосновы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программирование
 
Genome
GenomeGenome
Genome
 
Плюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизниПлюсы и минусы автоматизации, пример из жизни
Плюсы и минусы автоматизации, пример из жизни
 
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
Алексей Баранцев -- Какое дело тестировщикам до исходного кода?
 
Qt tool evaluation
Qt tool evaluationQt tool evaluation
Qt tool evaluation
 
Отладка веб-приложений на Javascript
Отладка веб-приложений на JavascriptОтладка веб-приложений на Javascript
Отладка веб-приложений на Javascript
 
Введение в Microsoft Silverlight 3.0
Введение в Microsoft Silverlight 3.0Введение в Microsoft Silverlight 3.0
Введение в Microsoft Silverlight 3.0
 
Автоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решениюАвтоматизация тестирования iOS приложений: от идеи к готовому решению
Автоматизация тестирования iOS приложений: от идеи к готовому решению
 
Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...
 
DevOps guide for awesome quality assurance
DevOps guide for awesome quality assuranceDevOps guide for awesome quality assurance
DevOps guide for awesome quality assurance
 
Приемочные тесты на огурце
Приемочные тесты на огурцеПриемочные тесты на огурце
Приемочные тесты на огурце
 
Custom Language Plugin for JetBrains IDEA
Custom Language Plugin for JetBrains IDEACustom Language Plugin for JetBrains IDEA
Custom Language Plugin for JetBrains IDEA
 

Mais de ISsoft

Sql инъекции в тестировании
Sql инъекции в тестированииSql инъекции в тестировании
Sql инъекции в тестированииISsoft
 
введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...
введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...
введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...ISsoft
 
Testing of mobile apps
Testing of mobile appsTesting of mobile apps
Testing of mobile appsISsoft
 
Testing, qa, qc. what the difference
Testing, qa, qc. what the differenceTesting, qa, qc. what the difference
Testing, qa, qc. what the differenceISsoft
 
Ranorex presentation
Ranorex presentationRanorex presentation
Ranorex presentationISsoft
 
Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...
Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...
Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...ISsoft
 
Bdd and dsl как способ построения коммуникации на проекте
Bdd and dsl как способ построения коммуникации на проектеBdd and dsl как способ построения коммуникации на проекте
Bdd and dsl как способ построения коммуникации на проектеISsoft
 
Тестирование требований
Тестирование требованийТестирование требований
Тестирование требованийISsoft
 
Тестирование требований
Тестирование требованийТестирование требований
Тестирование требованийISsoft
 
Sql practise for beginners
Sql practise for beginnersSql practise for beginners
Sql practise for beginnersISsoft
 
Отдел юзабилити
Отдел юзабилитиОтдел юзабилити
Отдел юзабилитиISsoft
 
ToDoList
ToDoListToDoList
ToDoListISsoft
 
Prototype presentation
Prototype presentationPrototype presentation
Prototype presentationISsoft
 
решение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте baрешение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте baISsoft
 
решение одной из ключевых проблем компетенции Ba специалистов
решение одной из ключевых проблем компетенции Ba специалистоврешение одной из ключевых проблем компетенции Ba специалистов
решение одной из ключевых проблем компетенции Ba специалистовISsoft
 
Development of automated tests for ext js based web sites
Development of automated tests for ext js based web sitesDevelopment of automated tests for ext js based web sites
Development of automated tests for ext js based web sitesISsoft
 
Bdd or dsl как способ построения коммуникации на проекте
Bdd or dsl как способ построения коммуникации на проектеBdd or dsl как способ построения коммуникации на проекте
Bdd or dsl как способ построения коммуникации на проектеISsoft
 
инфотекс автоматизация тестирования
инфотекс   автоматизация тестированияинфотекс   автоматизация тестирования
инфотекс автоматизация тестированияISsoft
 

Mais de ISsoft (20)

Sql инъекции в тестировании
Sql инъекции в тестированииSql инъекции в тестировании
Sql инъекции в тестировании
 
введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...
введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...
введение в практическую разработку по в Is soft 4-1 and 4-2 clients and commu...
 
Testing of mobile apps
Testing of mobile appsTesting of mobile apps
Testing of mobile apps
 
Testing, qa, qc. what the difference
Testing, qa, qc. what the differenceTesting, qa, qc. what the difference
Testing, qa, qc. what the difference
 
Ranorex presentation
Ranorex presentationRanorex presentation
Ranorex presentation
 
Bugs
BugsBugs
Bugs
 
Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...
Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...
Bdd j behave or cucumber jvm plus appium for efficient cross platform mobile ...
 
Bdd and dsl как способ построения коммуникации на проекте
Bdd and dsl как способ построения коммуникации на проектеBdd and dsl как способ построения коммуникации на проекте
Bdd and dsl как способ построения коммуникации на проекте
 
Тестирование требований
Тестирование требованийТестирование требований
Тестирование требований
 
Тестирование требований
Тестирование требованийТестирование требований
Тестирование требований
 
Sql practise for beginners
Sql practise for beginnersSql practise for beginners
Sql practise for beginners
 
Отдел юзабилити
Отдел юзабилитиОтдел юзабилити
Отдел юзабилити
 
ToDoList
ToDoListToDoList
ToDoList
 
ISTQB
ISTQBISTQB
ISTQB
 
Prototype presentation
Prototype presentationPrototype presentation
Prototype presentation
 
решение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте baрешение основной проблемы Agile (scrum) проектов в контексте ba
решение основной проблемы Agile (scrum) проектов в контексте ba
 
решение одной из ключевых проблем компетенции Ba специалистов
решение одной из ключевых проблем компетенции Ba специалистоврешение одной из ключевых проблем компетенции Ba специалистов
решение одной из ключевых проблем компетенции Ba специалистов
 
Development of automated tests for ext js based web sites
Development of automated tests for ext js based web sitesDevelopment of automated tests for ext js based web sites
Development of automated tests for ext js based web sites
 
Bdd or dsl как способ построения коммуникации на проекте
Bdd or dsl как способ построения коммуникации на проектеBdd or dsl как способ построения коммуникации на проекте
Bdd or dsl как способ построения коммуникации на проекте
 
инфотекс автоматизация тестирования
инфотекс   автоматизация тестированияинфотекс   автоматизация тестирования
инфотекс автоматизация тестирования
 

Автоматизация и Selenium IDE

  • 2. Автоматизация тестирования (test automation) – набор техник, подходов и инструментальных средств, позволяющий исключить человека из выполнения НЕКОТОРЫХ задач в процессе тестирования. Инструментальное средство автоматизированного тестирования (test automation tool) – программа (или набор программ), позволяющая создавать, редактировать, отлаживать и выполнять автоматизированные тесты, а также собирать статистику их выполнения.
  • 3. Одной из наиболее распространѐнных и простых для понимания технологий автоматизации тестирования является технология Record&Playback («Записать и воспроизвести»). Суть еѐ заключается в том, что средство автоматизации тестирования позволяет выполнить с тестируемым приложением некоторый набор действий, которые будут записаны на специальном языке программирования, а затем могут быть воспроизведены.
  • 4.
  • 5. Selenium IDE – интегрированная среда для разработки и выполнения скриптов, представленная в виде плагина для браузера FireFox. Свежая версия всегда доступна по адресу: http://seleniumhq.org/projects/ide/
  • 6. Selenium IDE поддерживает Операционные системы: Windows, Linux, OS X, Языки программирования: PHP, Perl, Java, C#, Solaris Python, Ruby Браузеры: Firefox, IE , Safari , Opera, Chrome
  • 7. После установки плагин Selenium IDE доступен в браузере FireFox в разделе «Инструменты» («Tools»):
  • 8. Поле «Command» содержит команду («что необходимо сделать») Поле «Target» указывает целевой элемент («с чем это сделать») Поле «Value» содержит значение, с которым выполняется некоторая операция.
  • 9. 1. Открыть «http://tut.by» 2. Кликнуть «Все ресурсы» 3. Кликнуть «Новости IT»
  • 11.
  • 12. Поле «Command» содержит указание того, что необходимо выполнить на данном шаге теста.
  • 13. Примеры действий (actions): open click clickAndWait type Ошибка (невозможность) выполнения любой из этих команд приводит к остановке теста!
  • 14. Проверки используются для анализа состояния вебориентированного приложения. Например, можно проверять наличие того или иного элемента страницы, значение того или иного поля и т.п.
  • 15. Команды, выполняющие проверку, делятся на два больших класса: • начинающиеся с assert; • начинающиеся с verify. Ошибка assert = тест останавливается. Ошибка verify = протоколируется факт наличия проблемы и тест продолжается.
  • 16.
  • 17. Существует ещѐ один класс команд, (начинающихся со слов waitFor или заканчивающихся словами andWait). Эти команды предназначены для работы с элементами, появление или изменение состояния которых требует некоторого времени. Ошибка (невозможность) выполнения такой команды приводит к остановке теста!
  • 18. За ходом и результатом выполнения тестов можно следить с помощью поля log, в котором отражаются все выполняемые Selenium IDE действия.
  • 19. Поле target указывает, с каким элементом следует выполнить действие.
  • 20. Указание на элемент, с которым необходимо выполнить действие, производится при помощи т.н. «локаторов» (locator). Формат локатора таков: LocatorType = Argument
  • 21. Локаторы бывают следующих типов: • • • • id = ElementID name = ElementName link = LinkText xpath = XPath
  • 22. Локатор вида id = ElementID можно (хоть и НЕЖЕЛАТЕЛЬНО) записывать просто в виде ElementID. Идентификатор элемента нужно смотреть в HTML-коде страницы.
  • 23. Локатор вида name = ElementName тоже можно (хоть и ТОЖЕ НЕЖЕЛАТЕЛЬНО) записывать просто в виде ElementName. Имя элемента тоже нужно смотреть в HTML-коде страницы.
  • 24. Локатор вида link = LinkText НЕЛЬЗЯ записывать просто в виде LinkText. Текст ссылки чаще всего виден «невооружѐнным глазом», но если посмотреть его в коде – хуже не будет.
  • 25. Лучше НЕ использовать сокращѐнную форму записи локаторов (это может привести к неоднозначности определения элемента), но если очень хочется… Можно сокращать локаторы типа id или name, но НЕЛЬЗЯ сокращать локаторы типа link.
  • 26. Локатор вида xpath = XPath является самым универсальным, но требует понимания XML и непосредственно XPath. Почитать можно обо всѐм этом здесь: http://www.w3schools.com/xpath/ http://www.w3.org/TR/xpath/
  • 27. Сразу же после запуска Selenium IDE находится в режиме записи теста, выключать и повторно включать который можно кнопкой в правом верхнем углу окна Selenium IDE. Запись имеет смысл приостанавливать, если вы выполняете действия, не относящиеся к тесту.
  • 28. Для выполнения записанного теста есть несколько элементов в левом верхнем углу экрана: • регулятор скорости выполнения; • кнопка выполнения всех тестов; • кнопка выполнения текущего теста.
  • 29. В процессе воспроизведения теста Selenium IDE в реальном времени показывает, успешно ли выполнена та или иная команда: • подсветкой команды зелѐным или розовым в списке команд; • сообщениями в логе.
  • 30. Тесты, с которыми впоследствии можно будет продолжить работу в IDE, сохраняются в виде обычной HTML-страницы с определѐнной структурой. Для ускорения просмотра их можно открывать в браузере как обычные страницы. Несколько тестов (сценарий) можно сохранить в виде «тест-сьюта» (test-suite).
  • 31. У Selenium IDE есть один серьѐзный недостаток – тесты в нѐм «линейны» и примитивны. Всѐ же в нѐм нет полноценного языка программирования. Поэтому для действительно серьѐзной работы тест нужно экспортировать в соответствующий формат.