Upload
sqalab
View
716
Download
0
Embed Size (px)
Citation preview
Увеличиваем мощь фреймворка:keyword driven testing + генератор кода
Введение
Введение
Зачем?
1. Вводим новых сотрудников2. Уменьшаем время вхождения в работу3. Уменьшаем время написания тестов4. Добавляем новые «примочки» для клиентов
Когда?
1. Есть фреймворк2. Желание привлечь не программистов3. Передача части работы коллегам
Как?
1. Готовое решение2. Реализуем его сами
Фреймворк
High Level
Low level ScriptExt
DDT
ODT
Фреймворк
Генератор кода
High Level
Low level ScriptExt
DDT
ODT
Работа модуля
Framework
UserForm Client
Работа модуля
Framework
UserForm
Libs
Client
EventHandlers
Templates
Работа модуля
Framework
UserForm
Libs
Client
Test script
Config file
EventHandlers
Templates
Работа модуля
Framework
UserForm
Libs
Client
Test script
Config file
EventHandlers
Templates
Генерируем код
//the 1st function
If(! firstFunc() ) Log.Error(“Oops”)
//the 2nd function
If( secondFunc() ) Log.Event(“Hello”)
//the 3d function
If(! thirdFunc() ) Log.Error(“Oops”)
//the 4th function
If(! fourthFunc() ) Log.Event(“World”)
Генерируем код
//the 1st function
If(! firstFunc() ) Log.Error(“Oops”)
//the 2nd function
If( secondFunc() ) Log.Event(“Hello”)
//the 3d function
If(! thirdFunc() ) Log.Error(“Oops”)
//the 4th function
If(! fourthFunc() ) Log.Event(“World”)
//our first testfunction test(){ try { //the 1st function If(! firstFunc() ) Log.Error(“Oops”)
//the 2nd function If(secondFunc()) Log.Event(“Hello”)
//the 3d function if(! thirdFunc() ) Log.Event(“World”)
Создаём GUI форму
Генератор кода
1. Добавляем event handlers2. Пишем их реализацию3. Создаём хранилища шаблонов кода4. Создаём интерпретатор
Функционал для реализации
1. Динамическое обновление API2. Разнообразие опций для настройки тестов3. Генерация скрипта с тестом, его проверка
и запуск
Плюсы, минусы
1. Плюсы1. Нет необходимости в дополнительных
навыках2. Отсутствие интеграционных проблем3. Наглядно понятный интерфейс
2. Минус1. Нет возможности строить форму используя
UML блоки
Вопросы