Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
browser-monkey
Быстрые и удобные тесты в DOMе
1
Artem Avetisyan
artemave@gmail.com
https://github.com/artemave
2
Зачем тестировать в браузере?
- в случае SPA, браузер код сложный и его много
- облегчает разработку
3
Да, но это же медленно?
- в full stack интеграционных тестах медленно
- в изолированных тестах совсем наоборот
4
thin client - fat server
Server-side MVC
- в UI нет функционального кода
- UI сложно изолировать
5
- тестировать только UI код имеет смысл
- UI код просто изолировать
Client-side SPA
fat client - thin server
6
Существующие решения?
- WebDriverIO
7
Чем нам не угодил Webdriver?
- тест исполняется в NodeJs, код - в браузере
- WebDriver стартует браузер и предоставляет ...
8
browser-monkey
- ничего лишнего: только DOM interaction API
- все исполняется в браузере
9
10
11
Не плохо
- тест изобилует css селекторами
- плохо читается без комментариев
Но…
12
13
Component API
DSL для описания структуры страницы
14
15
Красота
“Run it anywhere”
- не запускает браузер
- можем гонять тесты в разных окружениях
16
17
В командной строке
- VDOM
18
19
В командной строке
- electron
19
20
21
В Хроме
- для разработки
22
23
Debug лог
Вопросы?
25
Artem Avetisyan
artemave@gmail.com
https://github.com/artemave
Demo project: https://github.com/artemave/brows...
Reliable DOM testing with browser-monkey
Upcoming SlideShare
Loading in …5
×

Reliable DOM testing with browser-monkey

81 views

Published on

Артем Аветисян
Featurist

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Reliable DOM testing with browser-monkey

  1. 1. browser-monkey Быстрые и удобные тесты в DOMе 1 Artem Avetisyan artemave@gmail.com https://github.com/artemave
  2. 2. 2 Зачем тестировать в браузере? - в случае SPA, браузер код сложный и его много - облегчает разработку
  3. 3. 3 Да, но это же медленно? - в full stack интеграционных тестах медленно - в изолированных тестах совсем наоборот
  4. 4. 4 thin client - fat server Server-side MVC - в UI нет функционального кода - UI сложно изолировать
  5. 5. 5 - тестировать только UI код имеет смысл - UI код просто изолировать Client-side SPA fat client - thin server
  6. 6. 6 Существующие решения? - WebDriverIO
  7. 7. 7 Чем нам не угодил Webdriver? - тест исполняется в NodeJs, код - в браузере - WebDriver стартует браузер и предоставляет DOM interaction API
  8. 8. 8 browser-monkey - ничего лишнего: только DOM interaction API - все исполняется в браузере
  9. 9. 9
  10. 10. 10
  11. 11. 11 Не плохо - тест изобилует css селекторами - плохо читается без комментариев Но…
  12. 12. 12
  13. 13. 13 Component API DSL для описания структуры страницы
  14. 14. 14
  15. 15. 15 Красота
  16. 16. “Run it anywhere” - не запускает браузер - можем гонять тесты в разных окружениях 16
  17. 17. 17 В командной строке - VDOM
  18. 18. 18
  19. 19. 19 В командной строке - electron 19
  20. 20. 20
  21. 21. 21 В Хроме - для разработки
  22. 22. 22
  23. 23. 23 Debug лог
  24. 24. Вопросы? 25 Artem Avetisyan artemave@gmail.com https://github.com/artemave Demo project: https://github.com/artemave/browser-monkey-example browser-monkey: https://github.com/featurist/browser-monkey

×