Путеводитель в мире Selenium

8.652 visualizações

Publicada em

Introduction to Selenium world for those who are starting journey to Selenium testing tools. This is review of available instruments. I'll share our experiences of use of Selenium tools, how we moved from IDE to Grid. As a takeaway you'll know everything you need to avoid the same errors like we did and to select your tool wisely.

Publicada em: Tecnologia
  • <br /><object type="application/x-shockwave-flash" data="http://static.video.yandex.ru/lite/xpinjection/z91lc2qjiy.3017/" width="350" height="288"><param name="movie" value="http://static.video.yandex.ru/lite/xpinjection/z91lc2qjiy.3017/"></param><embed src="http://static.video.yandex.ru/lite/xpinjection/z91lc2qjiy.3017/" width="350" height="288" type="application/x-shockwave-flash"></embed></object>
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

Путеводитель в мире Selenium

  1. 1. Путеводитель в мире SeleniumКирилл Климов Selenium Camp, Киев, 26.02.2011
  2. 2. О чём будем говорить• Введение• Критерии выбора, наш путь• Selenium IDE• Selenium Core• Selenium Remote Control (RC)• Selenium Grid• Другие проекты Selenium• Итоги
  3. 3. Введение
  4. 4. ВведениеJason Huggins, 2004
  5. 5. ВведениеJason Huggins, 2004 Commiters: ~20
  6. 6. ВведениеJason Huggins, 2004 Apache 2.0 License Commiters: ~20
  7. 7. ВведениеJason Huggins, 2004 Apache 2.0 License Commiters: ~20
  8. 8. ВведениеJason Huggins, 2004 Apache 2.0 License Commiters: ~20
  9. 9. ВведениеJason Huggins, 2004 Apache 2.0 License Commiters: ~20
  10. 10. Критерии выбора инструмента
  11. 11. Критерии выбора инструмента• возможности (что можно протестировать, что – нельзя)
  12. 12. Критерии выбора инструмента• возможности (что можно протестировать, что – нельзя)• скорость входа
  13. 13. Критерии выбора инструмента• возможности (что можно протестировать, что – нельзя)• скорость входа• лёгкость поддержки и изменения существующих тестов
  14. 14. Критерии выбора инструмента• возможности (что можно протестировать, что – нельзя)• скорость входа• лёгкость поддержки и изменения существующих тестов• $
  15. 15. Критерии выбора инструмента• возможности (что можно протестировать, что – нельзя)• скорость входа• лёгкость поддержки и изменения существующих тестов• $ ‣ сам инструмент
  16. 16. Наш путьIDE RC Grid 0½ 9 28 время, мес Core
  17. 17. Наш путьIDE RC Grid 0½ 9 28 время, мес Core
  18. 18. Selenium IDE
  19. 19. Selenium IDE
  20. 20. Selenium IDE<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>New Test</title></head><body><table cellpadding="1" cellspacing="1" border="1"><thead><tr><td rowspan="1" colspan="3">New Test</td></tr></thead><tbody><tr> <td>open</td> <td>http://www.google.com/</td> <td></td></tr><tr> <td>type</td> <td>q</td> <td>Selenium Camp</td></tr><tr> <td>waitForTextPresent</td> <td>Google Home</td> <td></td></tr><tr> <td>clickAndWait</td> <td>//li[1]/div/span/h3/a</td> <td></td></tr><tr> <td>verifyTextPresent</td> <td>Первая Selenium конференция в Европе</td> <td></td></tr></tbody></table></body></html>
  21. 21. Selenium IDE<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>New Test</title></head><body><table cellpadding="1" cellspacing="1" border="1"> <tr><thead><tr><td rowspan="1" colspan="3">New Test</td></tr> <td>open</td></thead><tbody> <td>http://www.google.com/</td><tr> <td></td> <td>open</td> <td>http://www.google.com/</td> </tr> <td></td> <tr></tr> <td>type</td><tr> <td>type</td> <td>q</td> <td>q</td> <td>Selenium Camp</td> <td>Selenium Camp</td> </tr></tr><tr> <tr> <td>waitForTextPresent</td> <td>waitForTextPresent</td> <td>Google Home</td> <td>Google Home</td> <td></td></tr> <td></td><tr> </tr> <td>clickAndWait</td> <tr> <td>//li[1]/div/span/h3/a</td> <td></td> <td>clickAndWait</td></tr> <td>//li[1]/div/span/h3/a</td><tr> <td></td> <td>verifyTextPresent</td> <td>Первая Selenium конференция в Европе</td> </tr> <td></td> <tr></tr> <td>verifyTextPresent</td></tbody></table> <td>Первая Selenium конференция в Европе</td></body> <td></td></html> </tr>
  22. 22. Selenium IDE
  23. 23. Команды Selenium – Selenese
  24. 24. Команды Selenium – SeleneseТипы команд:• Действия (Actions)• Методы доступа (Accessors)• Проверки (Assertions)
  25. 25. Команды Selenium – SeleneseТипы команд: Примеры:• Действия (Actions) • open • click/clickAndWait• Методы доступа (Accessors) • verifyTitle/assertTitle • verifyTextPresent• Проверки (Assertions) • verifyElementPresent • verifyText • verifyTable • waitForPageToLoad • waitForElementPresent
  26. 26. Selenium IDE для “отдельной” задачи
  27. 27. Selenium IDE: итоги
  28. 28. Selenium IDE: итоги+ просто
  29. 29. Selenium IDE: итоги+ просто+ бы стры й вход
  30. 30. Selenium IDE: итоги+ просто+ бы стры й вход+ низкие требования к людям
  31. 31. Selenium IDE: итоги+ просто+ бы стры й вход+ низкие требования к людям+ можноиспользовать для отдельны х “вспомогательны х” задач
  32. 32. Selenium IDE: итоги+ просто - просто+ бы стры й вход+ низкие требования к людям+ можноиспользовать для отдельны х “вспомогательны х” задач
  33. 33. Selenium IDE: итоги+ просто - просто+ бы стры й вход - тяжело поддерживать+ низкие требования к людям+ можноиспользовать для отдельны х “вспомогательны х” задач
  34. 34. Selenium IDE: итоги+ просто - просто+ бы стры й вход - тяжело поддерживать+ низкие требования к людям - слабо пригоден для проектов больших объёмов+ можноиспользовать для отдельны х “вспомогательны х” задач
  35. 35. Selenium IDE: итоги+ просто - просто+ бы стры й вход - тяжело поддерживать+ низкие требования к людям - слабо пригоден для проектов больших объёмов+ можноиспользовать для отдельны х “вспомогательны х” задач - только Firefox
  36. 36. Selenium Core web server /web-site/ /selenium/
  37. 37. Selenium Core
  38. 38. Selenium Core
  39. 39. Selenium Core: итоги+ просто - просто+ бы стры йвход - тяжело поддерживать (хоть и сложнее, чем IDE) - слабо пригоден для+ низкие требования к проектов больших людям объёмов - отсутствует логирование
  40. 40. Selenium Remote Control (RC)
  41. 41. Selenium Remote Control (RC) Зависит от приложения Не зависит от приложения Selenium Selenese тест
  42. 42. Selenium Remote Control (RC)
  43. 43. Selenium Remote Control (RC)
  44. 44. Selenium Remote Control (RC)
  45. 45. Selenium Remote Control (RC)
  46. 46. Selenium Remote Control (RC)
  47. 47. Selenium Remote Control (RC): итоги
  48. 48. Selenium Remote Control (RC): итоги+ гибкость
  49. 49. Selenium Remote Control (RC): итоги+ гибкость+ переиспользуемость
  50. 50. Selenium Remote Control (RC): итоги+ гибкость+ переиспользуемость+ большие объёмы
  51. 51. Selenium Remote Control (RC): итоги+ гибкость - сложно, тяжёлы й вход+ переиспользуемость+ большие объёмы
  52. 52. Selenium Remote Control (RC): итоги+ гибкость - сложно, тяжёлы й вход+ переиспользуемость - вы сокие требования к людям+ большие объёмы
  53. 53. Selenium Remote Control (RC): итоги+ гибкость - сложно, тяжёлы й вход+ переиспользуемость - вы сокие требования к людям+ большие объёмы - меньшая наглядность
  54. 54. Selenium Remote Control (RC): итоги+ гибкость - сложно, тяжёлы й вход+ переиспользуемость - вы сокие требования к людям+ большие объёмы - меньшая наглядность - тяжелее отладка
  55. 55. Selenium Grid: обычный RC Зависит от приложения Не зависит от приложения Selenium Selenese тест
  56. 56. Selenium Grid Зависит от приложения Не зависит от приложения Selenium Selenese тест Selenese
  57. 57. Selenium Grid: итоги+ решает проблему объёма / - добавляет сложности времени на тесты
  58. 58. Как, это всё..?
  59. 59. Как, это всё..?• Selenium on Rails
  60. 60. Как, это всё..?• Selenium on Rails• Selenium on Ruby
  61. 61. Как, это всё..?• Selenium on Rails• Selenium on Ruby• CubicTest
  62. 62. Как, это всё..?• Selenium on Rails• Selenium on Ruby• CubicTest• Bromine
  63. 63. Итоги
  64. 64. Итоги✓ не спешите с запуском
  65. 65. Итоги✓ не спешите с запуском✓ поймите разницу в инструментах
  66. 66. Итоги✓ не спешите с запуском✓ поймите разницу в инструментах✓ смотрите, что вам действительно нужно
  67. 67. Итоги✓ не спешите с запуском✓ поймите разницу в инструментах✓ смотрите, что вам действительно нужно✓ смотрите в перспективе 1-2х лет
  68. 68. Итоги✓ не спешите с запуском✓ поймите разницу в инструментах✓ смотрите, что вам действительно нужно✓ смотрите в перспективе 1-2х лет✓ найдите “консультанта”
  69. 69. Спасибо за внимание!Кирилл Климов+380 67 4027241kirill@kserver.kiev.ualinkedIn.com/in/kirillklimovBlog: agileguy.posterous.comTwitter: @f0g
  70. 70. Спасибо за внимание! http://spkr8.com/t/5709Кирилл Климов+380 67 4027241kirill@kserver.kiev.ualinkedIn.com/in/kirillklimovBlog: agileguy.posterous.comTwitter: @f0g

×