Виктор Розаев - Как не сломать обратную совместимость...
Post on 11-Apr-2017
41 Views
Preview:
TRANSCRIPT
Как не сломать обратную совместимость в Public API
Виктор РозаевOdin (Ingram Micro Cloud)
vrozaev@odin.com
APS JS SDK и ISV
• APS JS SDK – это JavaScript фреймворк который мы разрабатываем
• ISV (Independent Software Vendor) – сторонние разработчики которые интегрируют новые сервисы в Odin Automation
1
Public API
Визуальные компоненты (виджеты):
• Свойства
• Методы
Утилиты
• Работа с сетью
• Data store
• Help tools
7
Необходимо проверить
Свойства
• Значение по умолчанию
• Все сайд-эффекты от изменения значения
• Валидацию
Методы и события
• Результат выполнения
• Работу с некорректными аргументами
• Безопасность переопределения
• Порядок выполнения
• Контекст исполнения
• Аргументы
• Количество вызовов
8
Какие типы тестов поддерживает Intern?
Unit Tests
Unit Tests
• Поддерживаются BDD, TDD, QUnit
• Встроенная Chai Assertion Library
Functional Tests
• Компенсация ошибок в WebDriver
Benchmark Tests
Accessibility
Visual Regression
14
Какие типы тестов поддерживает Intern?
Unit Tests
Unit Tests
• Поддерживаются BDD, TDD, QUnit
• Встроенная Chai Assertion Library
Functional Tests
• Компенсация ошибок в WebDriver
Benchmark Tests
Accessibility
Visual Regression
16
Какие типы тестов поддерживает Intern?
Unit Tests
Unit Tests
• Поддерживаются BDD, TDD, QUnit
• Встроенная Chai Assertion Library
Functional Tests
• Компенсация ошибок в WebDriver
Benchmark Tests
Accessibility
Visual Regression
17
Какие типы тестов поддерживает Intern?
Unit Tests
Unit Tests
• Поддерживаются BDD, TDD, QUnit
• Встроенная Chai Assertion Library
Functional Tests
• Компенсация ошибок в WebDriver
Benchmark Tests
Accessibility
Visual Regression
Benchmark Tests
Accessibility
Visual Regression
19
• Встроенные инструменты для code coverage
• Поддержка multi-level source maps
• Интеграция с CI
• Расширяемость
• Интеграция с облачными системами
• Автоматическая настройка локального Selenium
• Тестирование мобильных приложений
И многое другое!
Полный список возможностей: theintern.github.io
20
Понимание тестирования
Чем тестировать — Intern
Как тестировать — Unit Tests, Functional Tests
Что тестировать — Public API
Кто это будет делать?
Когда этим заниматься?
Кто это будет делать — Все!
Когда этим заниматься — В процессе разработки!
21
• Изменения стали более контролируемыми.
• Изменилось качество багов.
• Код стал чище.
• Можно коммитить в пятницу вечером!
Что нам это дало?
24
На этом всё, спасибо!
Сайт: https://theintern.github.io
Демо проекты: https://github.com/theintern/intern-examples
Блог: https://www.sitepen.com/blog/category/intern
top related