CQRS. Event Sourcing.
Особенности тестирования
Paralect QA BarCamp
Uladzimir Kryvenka
Май 2013
Обо мне
Владимир Кривенко
Инструменты: Selenium, Coded UI Test
Один из основателей:Пишу блог :
В тестировании 6+ лет
Автор портала:
Автоматизацией занимаюсь 3+ года
Это я:
Работаю:
Head of QA в Paralect
Опыт:
План
• Зачем это надо?
• Event Sourcing
• CQRS
• Как это выглядит на практике
• Как это отражается на тестировании
Зачем это надо?
• Performance
• Simplification
• Audit Trail
• Integration with other sub-systems
• Focus on the business. Deriving additional business value
from event history
• Production troubleshooting
• Fixing errors
• Scalability
• Reduced complexity
Event Sourcing
CQRS
Как это выглядит у нас
• read. Статические данные
• write. Коллекции ивентов
• view. Непосредственно сами данные
• logs. Ошибок и т.д.
Особенности при тестировании
• Денормализация
• Модификация данных
• Ресурсы
• Мониторинг
Upgrade (Апгрейд событий)
P.S. Картинка ничего общего с апгрейдом не имеет – она просто очень клевая
Replay
Модификация данных
• Проверка старых данных после реплая и
апгрейда
• Тестирование на небольших базах
• Continuous integration для реплая и
апгрейда
• Изменения в базу только через ивенты
Ресурсы
Мониторинг
А теперь ваши
-ы
Пообщаемся? 
http://bugscatcher.net/
u.kryvenka@gmail.com
u.kryvenka

CQRS. Event Sourcing. Особенности тестирования