А. Хитрин "Robot Framework", DUMP-2014
Upcoming SlideShare
Loading in...5
×
 

А. Хитрин "Robot Framework", DUMP-2014

on

  • 282 views

 

Statistics

Views

Total Views
282
Views on SlideShare
282
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

А. Хитрин "Robot Framework", DUMP-2014 А. Хитрин "Robot Framework", DUMP-2014 Presentation Transcript

  • Robot Framework сводки с фронта Андрей Хитрин, Noda. -- D.U.M.P.’2014
  • NODA ● Софт для создания контакт-центров ● Основные языки: Java, Python, C++ ● Много унаследованного кода
  • ============================================================ D.U.M.P.Критерии выбора фреймворка ============================================================ Язык, знакомый нашим разработчикам | PASS | ------------------------------------------------------------
  • ============================================================ D.U.M.P.Критерии выбора фреймворка ============================================================ Язык, знакомый нашим разработчикам | PASS | ------------------------------------------------------------ Хорошая читаемость тестов | PASS | ------------------------------------------------------------
  • ============================================================ D.U.M.P.Критерии выбора фреймворка ============================================================ Язык, знакомый нашим разработчикам | PASS | ------------------------------------------------------------ Хорошая читаемость тестов | PASS | ------------------------------------------------------------ Развитое сообщество, проект не стоит на месте | PASS | ------------------------------------------------------------ D.U.M.P.Критерии выбора фреймворка | PASS | 3 critical tests, 3 passed, 0 failed 3 tests total, 3 passed, 0 failed ============================================================
  • www.failconf.ru
  • ============================================================ D.U.M.P.Опыт использования Robot Framework ============================================================ Читаемость тестов | ...
  • Список телефонов автоматически сортируется Создать кейс и зайти в него Задать номера телефонов 11 22 33 44 55 Страница должна содержать текст 11 | 22 | 33 | 44 | 55
  • При просмотре формы из кейса должны быть атрибуты Клиента Добавить физического клиента ${CLIENT_NAME} 69420813888 Подготовить форму с атрибутом ${LAST_NAME_ATTR} Добавить каталог в проект Зайти в кейс определенного клиента ${CLIENT_NAME} Открыть диалог по ссылке ${FORM_LINK} Страница должна содержать текст ${LAST_NAME_ATTR} [Teardown] Закрыть всплывающее окно и перейти на главное
  • ============================================================ D.U.M.P.Опыт использования Robot Framework ============================================================ Читаемость тестов | PASS | ------------------------------------------------------------ Разные форматы хранения: HTML, TXT, TSV | ...
  • ============================================================ D.U.M.P.Опыт использования Robot Framework ============================================================ Читаемость тестов | PASS | ------------------------------------------------------------ Разные форматы хранения: HTML, TXT, TSV | PASS | ------------------------------------------------------------ Архидетальные логи | ...
  • ============================================================ D.U.M.P.Опыт использования Robot Framework ============================================================ Читаемость тестов | PASS | ------------------------------------------------------------ Разные форматы хранения: HTML, TXT, TSV | PASS | ------------------------------------------------------------ Архидетальные логи | PASS | ------------------------------------------------------------ Все умеют читать и понимать логи | ...
  • ============================================================ D.U.M.P.Опыт использования Robot Framework ============================================================ Читаемость тестов | PASS | ------------------------------------------------------------ Разные форматы хранения: HTML, TXT, TSV | PASS | ------------------------------------------------------------ Архидетальные логи | PASS | ------------------------------------------------------------ Все умеют читать и понимать логи | FAIL | Есть некоторые тонкости, которым приходится учить ------------------------------------------------------------ Все могут писать тесты | ...
  • ============================================================ Читаемость тестов | PASS | ------------------------------------------------------------ Разные форматы хранения: HTML, TXT, TSV | PASS | ------------------------------------------------------------ Архидетальные логи | PASS | ------------------------------------------------------------ Все умеют читать и понимать логи | FAIL | Есть некоторые тонкости, которым приходится учить ------------------------------------------------------------ Все могут писать тесты | PASS | ------------------------------------------------------------ Все могут писать качественные тесты | ...
  • Разные форматы хранения: HTML, TXT, TSV | PASS | ------------------------------------------------------------ Архидетальные логи | PASS | ------------------------------------------------------------ Все умеют читать и понимать логи | FAIL | Есть некоторые тонкости, которым приходится учить ------------------------------------------------------------ Все могут писать тесты | PASS | ------------------------------------------------------------ Все могут писать качественные тесты | FAIL | Приходится учить коллег, как делать тесты правильно ------------------------------------------------------------ Интеграция с Jenkins | ...
  • Архидетальные логи | PASS | ------------------------------------------------------------ Все умеют читать и понимать логи | FAIL | Есть некоторые тонкости, которым приходится учить ------------------------------------------------------------ Все могут писать тесты | PASS | ------------------------------------------------------------ Все могут писать качественные тесты | FAIL | Приходится учить коллег, как делать тесты правильно ------------------------------------------------------------ Интеграция с Jenkins | PASS | ------------------------------------------------------------ Сьюты и тесты можно помечать тегами | ...
  • Все умеют читать и понимать логи | FAIL | Есть некоторые тонкости, которым приходится учить ------------------------------------------------------------ Все могут писать тесты | PASS | ------------------------------------------------------------ Все могут писать качественные тесты | FAIL | Приходится учить коллег, как делать тесты правильно ------------------------------------------------------------ Интеграция с Jenkins | PASS | ------------------------------------------------------------ Сьюты и тесты можно помечать тегами | PASS | ------------------------------------------------------------ Рефакторинг тестов | ...
  • Все могут писать тесты | PASS | ------------------------------------------------------------ Все могут писать качественные тесты | FAIL | Приходится учить коллег, как делать тесты правильно ------------------------------------------------------------ Интеграция с Jenkins | PASS | ------------------------------------------------------------ Сьюты и тесты можно помечать тегами | PASS | ------------------------------------------------------------ Рефакторинг тестов | FAIL | Делаем всё ручками, господа! ------------------------------------------------------------ Режим отладки | ...
  • Приходится учить коллег, как делать тесты правильно ------------------------------------------------------------ Интеграция с Jenkins | PASS | ------------------------------------------------------------ Сьюты и тесты можно помечать тегами | PASS | ------------------------------------------------------------ Рефакторинг тестов | FAIL | Делаем всё ручками, господа! ------------------------------------------------------------ Режим отладки | FAIL | Отладка для слабаков ------------------------------------------------------------ Скорость создания тестов | ...
  • Сьюты и тесты можно помечать тегами | PASS | ------------------------------------------------------------ Рефакторинг тестов | FAIL | Делаем всё ручками, господа! ------------------------------------------------------------ Режим отладки | FAIL | Отладка для слабаков ------------------------------------------------------------ Скорость создания тестов | FAIL | Возможно, мы просто что-то делаем не так? ------------------------------------------------------------ Богатый набор готовых библиотек | ...
  • Библиотеки ● Интерфейсы: Selenium, Swing, SWT, AutoIt ● Протоколы: Telnet, SSH ● Сборка: Ant, Maven, Jenkins ● Прочее: DB Library, Mabot ● ... остальная мелочёвка
  • Библиотеки ● Интерфейсы: Selenium, Swing, SWT, AutoIt ● Протоколы: Telnet, SSH ● Сборка: Ant, Maven, Jenkins ● Прочее: DB Library, Mabot ● ... остальная мелочёвка
  • ------------------------------------------------------------ Рефакторинг тестов | FAIL | Делаем всё ручками, господа! ------------------------------------------------------------ Режим отладки | FAIL | Отладка для слабаков ------------------------------------------------------------ Скорость создания тестов | FAIL | Возможно, мы просто что-то делаем не так? ------------------------------------------------------------ Богатый набор готовых библиотек | PASS | ------------------------------------------------------------ Невероятно простая интеграция с Python | ...
  • Делаем всё ручками, господа! ------------------------------------------------------------ Режим отладки | FAIL | Отладка для слабаков ------------------------------------------------------------ Скорость создания тестов | FAIL | Возможно, мы просто что-то делаем не так? ------------------------------------------------------------ Богатый набор готовых библиотек | PASS | ------------------------------------------------------------ Невероятно простая интеграция с Python | PASS | ------------------------------------------------------------ Невероятно простая интеграция с нашим приложением | ...
  • Steeve Freeman, “Fractal TDD”
  • Steeve Freeman, “Fractal TDD”
  • Отладка для слабаков ------------------------------------------------------------ Скорость создания тестов | FAIL | Возможно, мы просто что-то делаем не так? ------------------------------------------------------------ Богатый набор готовых библиотек | PASS | ------------------------------------------------------------ Невероятно простая интеграция с Python | PASS | ------------------------------------------------------------ Невероятно простая интеграция с нашим приложением | FAIL | (на самом деле нет) ------------------------------------------------------------ Переход с Selenium RC на Selenium Web Driver | ...
  • Robot Framework vs. Selenium ● SeleniumLibrary: стабильная работа, но только Selenium RC ● Selenium2Library: Selenium WebDriver, но стабильность работы не радует
  • ------------------------------------------------------------ Невероятно простая интеграция с Python | PASS | ------------------------------------------------------------ Невероятно простая интеграция с нашим приложением | FAIL | (на самом деле нет) ------------------------------------------------------------ Переход с Selenium RC на Selenium Web Driver | FAIL | Не все сторонние библиотеки одинаково хороши ------------------------------------------------------------ D.U.M.P.Опыт использования Robot Framework | PASS | 8 critical tests, 8 passed, 0 failed 15 tests total, 8 passed, 7 failed ============================================================
  • Выводы ● Инструмент хороший, но есть нюансы ● Инструмент - это ещё не всё, надо работать с людьми (с любовью, К.О.) ● Переход Selenium RC → Selenium Webdriver совсем не прост ● Задача регрессионного тестирования на текущий момент решается успешно
  • Вопросы (мои) ● Переход с Selenium RC на WebDriver ● Как лучше комбинировать тесты через интерфейс и API ● Генерация тестов (например, MBT) ahitrin@naumen.ru andrey.hitrin@gmail.com twitter.com/ahitrin nodacontact.com
  • Вопросы (ваши) Благодарю за внимание! ahitrin@naumen.ru andrey.hitrin@gmail.com twitter.com/ahitrin nodacontact.com
  • http://donate.fbk.info Секунда оффтопа