19
Увеличиваем мощь фреймворка: keyword driven testing + генератор кода

Увеличиваем мощь фреймворка Kdt & code`s generator

  • Upload
    sqalab

  • View
    716

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Увеличиваем мощь фреймворка   Kdt & code`s generator

Увеличиваем мощь фреймворка:keyword driven testing + генератор кода

Page 2: Увеличиваем мощь фреймворка   Kdt & code`s generator

Введение

Page 3: Увеличиваем мощь фреймворка   Kdt & code`s generator

Введение

Page 4: Увеличиваем мощь фреймворка   Kdt & code`s generator

Зачем?

1. Вводим новых сотрудников2. Уменьшаем время вхождения в работу3. Уменьшаем время написания тестов4. Добавляем новые «примочки» для клиентов

Page 5: Увеличиваем мощь фреймворка   Kdt & code`s generator

Когда?

1. Есть фреймворк2. Желание привлечь не программистов3. Передача части работы коллегам

Page 6: Увеличиваем мощь фреймворка   Kdt & code`s generator

Как?

1. Готовое решение2. Реализуем его сами

Page 7: Увеличиваем мощь фреймворка   Kdt & code`s generator

Фреймворк

High Level

Low level ScriptExt

DDT

ODT

Page 8: Увеличиваем мощь фреймворка   Kdt & code`s generator

Фреймворк

Генератор кода

High Level

Low level ScriptExt

DDT

ODT

Page 9: Увеличиваем мощь фреймворка   Kdt & code`s generator

Работа модуля

Framework

UserForm Client

Page 10: Увеличиваем мощь фреймворка   Kdt & code`s generator

Работа модуля

Framework

UserForm

Libs

Client

EventHandlers

Templates

Page 11: Увеличиваем мощь фреймворка   Kdt & code`s generator

Работа модуля

Framework

UserForm

Libs

Client

Test script

Config file

EventHandlers

Templates

Page 12: Увеличиваем мощь фреймворка   Kdt & code`s generator

Работа модуля

Framework

UserForm

Libs

Client

Test script

Config file

EventHandlers

Templates

Page 13: Увеличиваем мощь фреймворка   Kdt & code`s generator

Генерируем код

//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”)

Page 14: Увеличиваем мощь фреймворка   Kdt & code`s generator

Генерируем код

//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”)

Page 15: Увеличиваем мощь фреймворка   Kdt & code`s generator

Создаём GUI форму

Page 16: Увеличиваем мощь фреймворка   Kdt & code`s generator

Генератор кода

1. Добавляем event handlers2. Пишем их реализацию3. Создаём хранилища шаблонов кода4. Создаём интерпретатор

Page 17: Увеличиваем мощь фреймворка   Kdt & code`s generator

Функционал для реализации

1. Динамическое обновление API2. Разнообразие опций для настройки тестов3. Генерация скрипта с тестом, его проверка

и запуск

Page 18: Увеличиваем мощь фреймворка   Kdt & code`s generator

Плюсы, минусы

1. Плюсы1. Нет необходимости в дополнительных

навыках2. Отсутствие интеграционных проблем3. Наглядно понятный интерфейс

2. Минус1. Нет возможности строить форму используя

UML блоки

Page 19: Увеличиваем мощь фреймворка   Kdt & code`s generator

Вопросы