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.

Советы для успешной автоматизации тестирования веб-приложений

10,215 views

Published on

Published in: Technology
  • Be the first to comment

Советы для успешной автоматизации тестирования веб-приложений

  1. 1. Советы для успешной автоматизации тестирования веб-приложений Маирбек Хадиков
  2. 2. Большая ERP -система
  3. 3. Не бойтесь автоматизировать
  4. 4. Автоматизированные тесты vs QA
  5. 5. Преимущества тестов <ul><li>Ошибка гарантированно не появляется два раза </li></ul><ul><li>Легко обнаружить поломку </li></ul><ul><li>Менее болезненные изменения в проекте </li></ul><ul><li>QA может заняться более интересными вещами </li></ul>
  6. 6. Недостатки тестов <ul><li>Нужно научиться писать </li></ul><ul><li>Нужно настроить инфраструктуру </li></ul><ul><li>Требуют поддержки </li></ul>
  7. 7. Автоматизировать лучше с самого начала, но никогда не поздно
  8. 8. Выгодно <ul><li>Для бизнеса: </li></ul><ul><li>Качественней </li></ul><ul><li>Быстрее </li></ul><ul><li>Дешевле </li></ul><ul><li>Для сотрудников: </li></ul><ul><li>Интересно </li></ul><ul><li>Эффективно </li></ul>
  9. 9. Прогоняйте тесты регулярно
  10. 10. Иначе
  11. 11. Ответственный за прохождение тестов человек
  12. 12. Code Review
  13. 13. Non-blocking with DVCS
  14. 14. Посмотрите на Selenium 2.0
  15. 15. Улучшенный API
  16. 16. CSS Selectors
  17. 17. Page Factory
  18. 18. Широкая поддержка браузеров
  19. 19. Пишите тест сценарии понятные нетехническим людям
  20. 20. Код на Selenium для клиента Too Technical
  21. 21. Domain Specific Abstractions
  22. 22. Page Objects
  23. 23. Пример
  24. 24. Изолируйте тесты от окружения
  25. 25.
  26. 26. Множество серверов
  27. 27. Всевозможные локализации
  28. 28. Dependency Injection
  29. 29. Dependency Injection <ul><li>Page Object напрямую не знает о том </li></ul><ul><ul><li>какой браузер используется </li></ul></ul><ul><ul><li>какой язык выбран </li></ul></ul><ul><ul><li>какой адрес сервера с приложением </li></ul></ul><ul><ul><li>… </li></ul></ul>
  30. 30. Пример
  31. 31. No Side Effects
  32. 32. Test One Thing and test it well
  33. 33. Создание Test Suite должно быть гибким
  34. 34. Packages
  35. 35. Labels
  36. 36. Labels
  37. 37. junit-suite-configurator
  38. 38. Диагностика падения теста должна быть быстрой
  39. 39. Assertions
  40. 40. Специальные ошибки
  41. 41. Детальная информация <ul><li>Адрес сервера </li></ul><ul><li>Кто залогинен </li></ul><ul><li>Stack trace </li></ul><ul><li>Screenshot </li></ul>
  42. 42. Задумывайтесь о распараллеливании тестов заранее
  43. 43. Время... Время... Время...
  44. 44. Несколько браузеров
  45. 45. Множество рабочих станций
  46. 46. Проблема : Shared Resources
  47. 47. Shared Resources: Блокировки Медленно работает Сложно написать
  48. 48. Shared Resources: Независимость <ul><li>Разные пользователи </li></ul><ul><li>Разные сервера </li></ul>
  49. 49. Q&A <ul><li>Email: [email_address] </li></ul><ul><li>Twitter: @mairbek </li></ul><ul><li>My Projects: https://github.com/mairbek </li></ul>

×