Всем привет! Этот небольшой пост посвящен системе тестирования MeteorJS-приложений Laika от Arunoda Susiripala. Ее особенности довольно интересны:
- Laika запускает свои тесты так же, как запускается реальное приложение (используется PhantomJS)
- Каждый тест изолирован, т.е. заново запускается ваше MeteorJS-приложение с чистой базой данных
- Вы можете использовать для разработки и meteor, и meteorite, laika прекрасно работает с ними обоими
- Вы можете запускать проверку на сервере и клиенте в одном тесте. Это поможет протестировать такие моменты, как права доступа (permission), подписки (subscriptions) и вызовы методов (method calls)
- Так как MeteorJS работает в реальном времени, то вам потребуется тестировать приложение при работе нескольких клиентов одновременно. Laika это может.
- Возможность использования событий для более точного тестирования, т.е., фактически, эмуляция работы пользователя
- Передача значений в код во время выполнения теста через аргументы
- Ожидание окончания генерации шаблонов (templates)