VIQA Инструмент для тестирования Web UI.
Вика старается сделать для вас процесс тестирование удобным и понятным, позаботится о логировании всех ваших действий и будет рада узнать что-нибудь новенькое, если вы захотите ее обучить.
Инструмент VIQA использует популярный шаблон PageObjects расширяя его до таких понятий как сайт и страница. Все используемые элементы интуитивно понятны, не требуют от вас лишних действий для работы с ними и обладают широкими возможностями для настройки работы с ними.
Каждое действие элемента можно подстроить под свое приложение, либо настроить общую работу элементов.
Вика желает вам интересной и приятной работы.
3. V I Q A
Задача.
Почему не хватило Selenium
UI обертка - Yandex QA Tools достоинства
Проблемы Yandex QA Tool и их решения в VIQA
Описание концепции Virtual Intelligence
Плюшки VIQA и расширение PageObjects
Видео примеры
Что дальше
7. Зачастую тесты выглядят примерно так
driver.FindElement(By.XPath(“somelocator1")).SendKeys("1000");
driver.FindElement(By.XPath(“somelocator2")).SendKeys("20000");
driver.FindElement(By.XPath(“somelocator3")).Click();
driver.FindElement(By.XPath(“somelocator4")).Click();
driver.FindElement(By.XPath(“somelocator5").Click();
driver.FindElement(By.XPath(“somelocator6")).Click();
driver.FindElement(By.XPath(“somelocator7")).Click();
driver.FindElement(By.XPath(“somelocator8")).Click();
driver.FindElement(By.XPath(“somelocator9")).Click();
driver.FindElement(By.XPath(“somelocator10")).Click();
8. Надстройка над Selenium
Yandex QA Tool
Работает с понятными элементами:
Button, Checkbox, TextInput
Использует PageObjects и Blocks
Хороший инструмент для тестирования UI,
но...
18. V I Q A Интерфейсы
public interface ICheckbox : IClickable, ILabeled, ISetValue
{
void Check();
void Uncheck();
bool IsChecked();
}
19. Переопределение действия
из нескольких шагов
new DropDown("My Dropdown") {
SelectAction = val => {
MySelectMainElement.Click();
MySelectListElement.WithName(val).Click();
}
};
40. V I Q A
[Name(Name = "Wi-fi"), Locate(ByXPath = "//*[@class=‘my-checkbox']")]
public ICheckbox MyCheckbox1 = new Checkbox();
[Name(Name = "Wi-fi"), Locate(ByClassName = “my-checkbox")]
public Checkbox MyCheckbox2;
public ICheckbox MyCheckbox3
= new Checkbox("Wi-fi", "#my-checkbox");
public Checkbox MyCheckbox4
= new Checkbox("Wi-fi", By.CssSelector("#my-checkbox"));
46. Форма
Работа с формой описывается отдельно
Форма заполняется из бизнес сущности/ей
Одна строчка в коде
47. VI-элементы: More
А также:
Стабильный поиск элемента
Встроенная Проверка уникальности элемента
Стабильное нажатие элементов
Переопределение действий для любых VIElements
Логирование всех действий и результатов по умолчанию
49. Написание тестов
Создаем Сайт. Настраиваем его
Создаем страницы/Секции VIElement-ов
Описываем-обучаем элементы для каждой страницы
Описываем Действия со страницами
Составляем тесты
50. VIQA Profit
Обучаемые Веб Элементы
Использование Интерфейсов
Простота использования
Шаблоны PageObjects, каскадная
инициализация элементов
51. VIQA Profit
Встроенные логирование и алертинг
Широкие возможность настройки
Фреймворка (свой логгер, настройки
webDriver, таймауты и прочее)
Множество небольших но
приятных мелочей
53. Попробуйте сами
Роман Иовлев
Email: viqablog@gmail.com или
romanyister@gmail.com
GitHub
https://github.com/Supreme85/VIQAUITestingTool
http://vk.com/viqatools