selenium-rspec-dsl 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (236) hide show
  1. data/common/shared/common.rb +167 -0
  2. data/config/aggregate_reports.rb +124 -0
  3. data/config/array_extension.rb +13 -0
  4. data/config/multi_process_behaviour_runner.rb +50 -0
  5. data/config/selenium-setup.rb +32 -0
  6. data/config/site_config.rb +8 -0
  7. data/sites/button.rb +31 -0
  8. data/sites/buttonAjax.rb +14 -0
  9. data/sites/buttonJQuery.rb +26 -0
  10. data/sites/buttonMultiWindow.rb +99 -0
  11. data/sites/buttonNonLoad.rb +11 -0
  12. data/sites/checkbox.rb +22 -0
  13. data/sites/checkboxExtjs.rb +10 -0
  14. data/sites/checkboxGwt.rb +24 -0
  15. data/sites/dropdown.rb +28 -0
  16. data/sites/dropdownAjax.rb +40 -0
  17. data/sites/dropdownExtjs.rb +32 -0
  18. data/sites/dropdownJQuery.rb +40 -0
  19. data/sites/dropdownLoad.rb +25 -0
  20. data/sites/element.rb +172 -0
  21. data/sites/form.rb +7 -0
  22. data/sites/image.rb +7 -0
  23. data/sites/label.rb +32 -0
  24. data/sites/link.rb +32 -0
  25. data/sites/linkMultiWindow.rb +160 -0
  26. data/sites/linkNonLoad.rb +11 -0
  27. data/sites/listbox.rb +16 -0
  28. data/sites/page.rb +16 -0
  29. data/sites/panel.rb +7 -0
  30. data/sites/radiobutton.rb +10 -0
  31. data/sites/tabPanel.rb +7 -0
  32. data/sites/table.rb +48 -0
  33. data/sites/tableExtjs.rb +42 -0
  34. data/sites/test/googleResults_screen.rb +15 -0
  35. data/sites/test/googleSearch_screen.rb +27 -0
  36. data/sites/textbox.rb +16 -0
  37. data/sites/tree.rb +7 -0
  38. data/sites/treeGwt.rb +32 -0
  39. data/spec/spec.opts +6 -0
  40. data/spec/spec_helper.rb +40 -0
  41. data/spec/test/testPass_spec.rb +36 -0
  42. data/spec/test/testPending_spec.rb +13 -0
  43. data/vendor/selenium-client-1.2.17/README.markdown +328 -0
  44. data/vendor/selenium-client-1.2.17/examples/rspec/google_spec.rb +41 -0
  45. data/vendor/selenium-client-1.2.17/examples/script/google.rb +25 -0
  46. data/vendor/selenium-client-1.2.17/examples/testunit/google_test.rb +39 -0
  47. data/vendor/selenium-client-1.2.17/lib/nautilus/shell.rb +32 -0
  48. data/vendor/selenium-client-1.2.17/lib/selenium.rb +14 -0
  49. data/vendor/selenium-client-1.2.17/lib/selenium/client.rb +27 -0
  50. data/vendor/selenium-client-1.2.17/lib/selenium/client/base.rb +118 -0
  51. data/vendor/selenium-client-1.2.17/lib/selenium/client/driver.rb +11 -0
  52. data/vendor/selenium-client-1.2.17/lib/selenium/client/extensions.rb +118 -0
  53. data/vendor/selenium-client-1.2.17/lib/selenium/client/generated_driver.rb +1711 -0
  54. data/vendor/selenium-client-1.2.17/lib/selenium/client/idiomatic.rb +488 -0
  55. data/vendor/selenium-client-1.2.17/lib/selenium/client/javascript_expression_builder.rb +116 -0
  56. data/vendor/selenium-client-1.2.17/lib/selenium/client/javascript_frameworks/jquery.rb +13 -0
  57. data/vendor/selenium-client-1.2.17/lib/selenium/client/javascript_frameworks/prototype.rb +13 -0
  58. data/vendor/selenium-client-1.2.17/lib/selenium/client/protocol.rb +96 -0
  59. data/vendor/selenium-client-1.2.17/lib/selenium/client/selenium_helper.rb +34 -0
  60. data/vendor/selenium-client-1.2.17/lib/selenium/command_error.rb +4 -0
  61. data/vendor/selenium-client-1.2.17/lib/selenium/protocol_error.rb +4 -0
  62. data/vendor/selenium-client-1.2.17/lib/selenium/rake/default_tasks.rb +16 -0
  63. data/vendor/selenium-client-1.2.17/lib/selenium/rake/remote_control_start_task.rb +70 -0
  64. data/vendor/selenium-client-1.2.17/lib/selenium/rake/remote_control_stop_task.rb +44 -0
  65. data/vendor/selenium-client-1.2.17/lib/selenium/rake/tasks.rb +6 -0
  66. data/vendor/selenium-client-1.2.17/lib/selenium/remote_control/remote_control.rb +33 -0
  67. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/file_path_strategy.rb +78 -0
  68. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/html_report.rb +123 -0
  69. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/selenium_test_report_formatter.rb +87 -0
  70. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/reporting/system_capture.rb +72 -0
  71. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/rspec_extensions.rb +96 -0
  72. data/vendor/selenium-client-1.2.17/lib/selenium/rspec/spec_helper.rb +35 -0
  73. data/vendor/selenium-client-1.2.17/lib/tcp_socket_extension.rb +32 -0
  74. data/vendor/selenium-client-1.2.17/test/all_unit_tests.rb +3 -0
  75. data/vendor/selenium-grid-1.0.4/Capfile +107 -0
  76. data/vendor/selenium-grid-1.0.4/README +10 -0
  77. data/vendor/selenium-grid-1.0.4/Rakefile +190 -0
  78. data/vendor/selenium-grid-1.0.4/build.xml +182 -0
  79. data/vendor/selenium-grid-1.0.4/doc/resources/Multiple Environments Demo Setup.svg +518 -0
  80. data/vendor/selenium-grid-1.0.4/doc/resources/Multiple Machine Demo Setup.svg +371 -0
  81. data/vendor/selenium-grid-1.0.4/doc/resources/Rakefile +18 -0
  82. data/vendor/selenium-grid-1.0.4/doc/resources/Requesting a Specific Environment.svg +576 -0
  83. data/vendor/selenium-grid-1.0.4/doc/resources/Selenium Grid Setup.svg +539 -0
  84. data/vendor/selenium-grid-1.0.4/doc/resources/Selenium Grid.css +68 -0
  85. data/vendor/selenium-grid-1.0.4/doc/resources/Traditional Selenium Setup.svg +295 -0
  86. data/vendor/selenium-grid-1.0.4/doc/website/Rakefile +37 -0
  87. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Environment Demo Setup - Small.png +0 -0
  88. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Environment Demo Setup.png +0 -0
  89. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Machine Demo Setup - Small.png +0 -0
  90. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Multiple Machine Demo Setup.png +0 -0
  91. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Requesting a Specific Environment - Small.png +0 -0
  92. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Requesting a Specific Environment.png +0 -0
  93. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Selenium Grid Logo.graffle +1015 -0
  94. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Selenium Grid Setup - Small.png +0 -0
  95. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Selenium Grid Setup.png +0 -0
  96. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Traditional Selenium Setup - Small.png +0 -0
  97. data/vendor/selenium-grid-1.0.4/doc/website/diagrams/Traditional Selenium Setup.png +0 -0
  98. data/vendor/selenium-grid-1.0.4/doc/website/faq.markdown +686 -0
  99. data/vendor/selenium-grid-1.0.4/doc/website/images/ant_version_osx_screenshot.png +0 -0
  100. data/vendor/selenium-grid-1.0.4/doc/website/images/ant_version_win_screenshot.png +0 -0
  101. data/vendor/selenium-grid-1.0.4/doc/website/images/background_better.png +0 -0
  102. data/vendor/selenium-grid-1.0.4/doc/website/images/background_feedback.png +0 -0
  103. data/vendor/selenium-grid-1.0.4/doc/website/images/background_participate.png +0 -0
  104. data/vendor/selenium-grid-1.0.4/doc/website/images/background_start_tracks.png +0 -0
  105. data/vendor/selenium-grid-1.0.4/doc/website/images/background_started.png +0 -0
  106. data/vendor/selenium-grid-1.0.4/doc/website/images/check_path_osx_screenshot.png +0 -0
  107. data/vendor/selenium-grid-1.0.4/doc/website/images/check_path_win_screenshot.png +0 -0
  108. data/vendor/selenium-grid-1.0.4/doc/website/images/dot_profile_editing_osx_screenshot.png +0 -0
  109. data/vendor/selenium-grid-1.0.4/doc/website/images/dot_profile_osx_screenshot.png +0 -0
  110. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-install.png +0 -0
  111. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-profile-update.png +0 -0
  112. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-verify.png +0 -0
  113. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-ant-version.png +0 -0
  114. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-java-version.png +0 -0
  115. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-navigate-path.png +0 -0
  116. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-selenium-install.png +0 -0
  117. data/vendor/selenium-grid-1.0.4/doc/website/images/install/linux/linux-selenium-sanity-check.png +0 -0
  118. data/vendor/selenium-grid-1.0.4/doc/website/images/install/win/selenium-check.bmp +0 -0
  119. data/vendor/selenium-grid-1.0.4/doc/website/images/install_ant_osx_screenshot.png +0 -0
  120. data/vendor/selenium-grid-1.0.4/doc/website/images/installing_grid_osx_screenshot.png +0 -0
  121. data/vendor/selenium-grid-1.0.4/doc/website/images/java_version_osx_screenshot.png +0 -0
  122. data/vendor/selenium-grid-1.0.4/doc/website/images/java_version_win_screenshot.png +0 -0
  123. data/vendor/selenium-grid-1.0.4/doc/website/images/sanity_check_osx_screenshot.png +0 -0
  124. data/vendor/selenium-grid-1.0.4/doc/website/images/sanity_check_win_screenshot.png +0 -0
  125. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-huge-white.png +0 -0
  126. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-huge.png +0 -0
  127. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-large.png +0 -0
  128. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo-small.png +0 -0
  129. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium-grid-logo.png +0 -0
  130. data/vendor/selenium-grid-1.0.4/doc/website/images/selenium_grid_logo_large.png +0 -0
  131. data/vendor/selenium-grid-1.0.4/doc/website/images/update_path_win_screenshot.png +0 -0
  132. data/vendor/selenium-grid-1.0.4/doc/website/javascripts/shadedborder.js +267 -0
  133. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/document.css +82 -0
  134. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/faq.css +97 -0
  135. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/home.css +133 -0
  136. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/openqa.css +72 -0
  137. data/vendor/selenium-grid-1.0.4/doc/website/stylesheets/site.css +74 -0
  138. data/vendor/selenium-grid-1.0.4/examples/ec2/Capfile +276 -0
  139. data/vendor/selenium-grid-1.0.4/examples/ec2/etc/background.png +0 -0
  140. data/vendor/selenium-grid-1.0.4/examples/ec2/etc/background.svg +163 -0
  141. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/cloud.rb +35 -0
  142. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/ec2.rb +7 -0
  143. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/ec2_client.rb +54 -0
  144. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/hub.rb +22 -0
  145. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/remote_command.rb +47 -0
  146. data/vendor/selenium-grid-1.0.4/examples/ec2/lib/selenium_grid/aws/server.rb +56 -0
  147. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/all_test.rb +2 -0
  148. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/cloud_test.rb +27 -0
  149. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/ec2_client_test.rb +137 -0
  150. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/hub_test.rb +24 -0
  151. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/remote_command_test.rb +46 -0
  152. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/server_test.rb +22 -0
  153. data/vendor/selenium-grid-1.0.4/examples/ec2/test/unit/test_helper.rb +4 -0
  154. data/vendor/selenium-grid-1.0.4/examples/ec2/vnc_password +1 -0
  155. data/vendor/selenium-grid-1.0.4/examples/java/Java Example.iml +18 -0
  156. data/vendor/selenium-grid-1.0.4/examples/java/build.xml +90 -0
  157. data/vendor/selenium-grid-1.0.4/examples/java/src/com/thoughtworks/selenium/grid/examples/java/GoogleImageTestBase.java +46 -0
  158. data/vendor/selenium-grid-1.0.4/examples/java/src/com/thoughtworks/selenium/grid/examples/java/ParisTest.java +50 -0
  159. data/vendor/selenium-grid-1.0.4/examples/java/src/com/thoughtworks/selenium/grid/examples/java/PerigordTest.java +42 -0
  160. data/vendor/selenium-grid-1.0.4/examples/java/target/classes/com/thoughtworks/selenium/grid/examples/java/GoogleImageTestBase.class +0 -0
  161. data/vendor/selenium-grid-1.0.4/examples/java/target/classes/com/thoughtworks/selenium/grid/examples/java/ParisTest.class +0 -0
  162. data/vendor/selenium-grid-1.0.4/examples/java/target/classes/com/thoughtworks/selenium/grid/examples/java/PerigordTest.class +0 -0
  163. data/vendor/selenium-grid-1.0.4/examples/java/testng-slow.xml +9 -0
  164. data/vendor/selenium-grid-1.0.4/examples/java/testng.xml +9 -0
  165. data/vendor/selenium-grid-1.0.4/examples/ruby/README +66 -0
  166. data/vendor/selenium-grid-1.0.4/examples/ruby/Rakefile +101 -0
  167. data/vendor/selenium-grid-1.0.4/examples/ruby/Ruby Example.iml +17 -0
  168. data/vendor/selenium-grid-1.0.4/examples/ruby/flickr_example.rb +16 -0
  169. data/vendor/selenium-grid-1.0.4/examples/ruby/lib/array_extension.rb +13 -0
  170. data/vendor/selenium-grid-1.0.4/examples/ruby/lib/multi_process_behaviour_runner.rb +28 -0
  171. data/vendor/selenium-grid-1.0.4/examples/ruby/paris_spec.rb +34 -0
  172. data/vendor/selenium-grid-1.0.4/examples/ruby/perigord_spec.rb +22 -0
  173. data/vendor/selenium-grid-1.0.4/examples/ruby/spec_helper.rb +59 -0
  174. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_04b8969da99c51289f692b41abbf271b_page_screenshot.png +0 -0
  175. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_04b8969da99c51289f692b41abbf271b_system_screenshot.png +0 -0
  176. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_280fd974268e3aecb89fbfbee25b5322_page_screenshot.png +0 -0
  177. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_280fd974268e3aecb89fbfbee25b5322_system_screenshot.png +0 -0
  178. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_8808fb9026e023f809d50ddc9cf00cd3_page_screenshot.png +0 -0
  179. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_8808fb9026e023f809d50ddc9cf00cd3_system_screenshot.png +0 -0
  180. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_94b209474d36add5ba908f308c63aa15_page_screenshot.png +0 -0
  181. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_94b209474d36add5ba908f308c63aa15_system_screenshot.png +0 -0
  182. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_a18dd8ce90cb4681d55b2148326ff085_page_screenshot.png +0 -0
  183. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_a18dd8ce90cb4681d55b2148326ff085_system_screenshot.png +0 -0
  184. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_b877a400a718a915c95038427389e0d9_page_screenshot.png +0 -0
  185. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_b877a400a718a915c95038427389e0d9_system_screenshot.png +0 -0
  186. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c1c6e8109e89867b52f6e123b8847b85_page_screenshot.png +0 -0
  187. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c1c6e8109e89867b52f6e123b8847b85_system_screenshot.png +0 -0
  188. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c9e7156818e496f6abb983a9a1725295_page_screenshot.png +0 -0
  189. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_c9e7156818e496f6abb983a9a1725295_system_screenshot.png +0 -0
  190. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_d6b2848186a7e4a73e19692c0fab2ae5_page_screenshot.png +0 -0
  191. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_d6b2848186a7e4a73e19692c0fab2ae5_system_screenshot.png +0 -0
  192. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_e30337afe445f0b6ebd29ecfaf4cd9f0_page_screenshot.png +0 -0
  193. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_e30337afe445f0b6ebd29ecfaf4cd9f0_system_screenshot.png +0 -0
  194. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_edc2da92cbf119e95eae988bb6f80792_page_screenshot.png +0 -0
  195. data/vendor/selenium-grid-1.0.4/examples/ruby/tmp/resources/test_report/example_edc2da92cbf119e95eae988bb6f80792_system_screenshot.png +0 -0
  196. data/vendor/selenium-grid-1.0.4/grid_configuration.yml +46 -0
  197. data/vendor/selenium-grid-1.0.4/lib/build/common-build.xml +228 -0
  198. data/vendor/selenium-grid-1.0.4/lib/ruby/file_extensions.rb +9 -0
  199. data/vendor/selenium-grid-1.0.4/lib/ruby/java/classpath.rb +28 -0
  200. data/vendor/selenium-grid-1.0.4/lib/ruby/java/vm.rb +31 -0
  201. data/vendor/selenium-grid-1.0.4/lib/ruby/s_grid/hub.rb +29 -0
  202. data/vendor/selenium-grid-1.0.4/lib/ruby/s_grid/remote_control.rb +40 -0
  203. data/vendor/selenium-grid-1.0.4/lib/ruby/tcp_socket_extensions.rb +23 -0
  204. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-demo-1.0.4.jar +0 -0
  205. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-demo-standalone-1.0.4.jar +0 -0
  206. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-hub-1.0.4.jar +0 -0
  207. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-hub-standalone-1.0.4.jar +0 -0
  208. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-remote-control-1.0.4.jar +0 -0
  209. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-remote-control-standalone-1.0.4.jar +0 -0
  210. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-tools-1.0.4.jar +0 -0
  211. data/vendor/selenium-grid-1.0.4/lib/selenium-grid-tools-standalone-1.0.4.jar +0 -0
  212. data/vendor/selenium-grid-1.0.4/lib/testng.policy +11 -0
  213. data/vendor/selenium-grid-1.0.4/log/test.txt +1 -0
  214. data/vendor/selenium-grid-1.0.4/project.properties +4 -0
  215. data/vendor/selenium-grid-1.0.4/sample-scripts/kill-rcs.sh +3 -0
  216. data/vendor/selenium-grid-1.0.4/sample-scripts/launch-rc.sh +4 -0
  217. data/vendor/selenium-grid-1.0.4/sample-scripts/launch-rcs.sh +5 -0
  218. data/vendor/selenium-grid-1.0.4/sample-scripts/launch-remote-controls.rb +20 -0
  219. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/Command line test.html +218 -0
  220. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/classes.html +44 -0
  221. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/groups.html +5 -0
  222. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/index.html +6 -0
  223. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/main.html +2 -0
  224. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/methods-alphabetical.html +12 -0
  225. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/methods-not-run.html +2 -0
  226. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/methods.html +12 -0
  227. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/reporter-output.html +1 -0
  228. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/testng.xml.html +1 -0
  229. data/vendor/selenium-grid-1.0.4/target/reports/Selenium Grid Demo In Parallel/toc.html +30 -0
  230. data/vendor/selenium-grid-1.0.4/target/reports/emailable-report.html +117 -0
  231. data/vendor/selenium-grid-1.0.4/target/reports/index.html +9 -0
  232. data/vendor/selenium-grid-1.0.4/vendor/commons-logging-1.0.4.jar +0 -0
  233. data/vendor/selenium-grid-1.0.4/vendor/selenium-java-client-driver-1.0.1.jar +0 -0
  234. data/vendor/selenium-grid-1.0.4/vendor/selenium-server-1.0.3.jar +0 -0
  235. data/vendor/selenium-grid-1.0.4/vendor/testng-5.7-jdk15.jar +0 -0
  236. metadata +296 -0
@@ -0,0 +1,16 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Basic Textbox object.
4
+ # Subclass of Element.
5
+ class Textbox < Element
6
+ #returns the current value of the object
7
+ def value
8
+ @value = @selenium.get_value(@locator)
9
+ return @value
10
+ end
11
+
12
+ # Types specified text into object
13
+ def type(text)
14
+ @selenium.type(@locator,text)
15
+ end
16
+ end
@@ -0,0 +1,7 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Basic tree object.
4
+ # Subclass of Element.
5
+ class Tree < Element
6
+
7
+ end
@@ -0,0 +1,32 @@
1
+ require File.dirname(__FILE__) + '/element'
2
+
3
+ # Basic tree object.
4
+ # Subclass of Element.
5
+ class Tree_GWT < Element
6
+ def click
7
+ @selenium.mouse_over(@locator)
8
+ @selenium.mouse_down(@locator)
9
+ begin
10
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
11
+ rescue => e
12
+ #continue
13
+ sleep(4)
14
+ end
15
+ sleep(3)
16
+ end
17
+
18
+ def doubleClick
19
+ @selenium.mouse_over(@locator)
20
+ @selenium.mouse_down(@locator)
21
+ @selenium.mouse_up(@locator)
22
+ @selenium.mouse_down(@locator)
23
+ @selenium.mouse_up(@locator)
24
+ begin
25
+ @selenium.wait_for_condition('selenium.browserbot.getCurrentWindow().jQuery.active == 0', 10000)
26
+ rescue => e
27
+ #continue
28
+ sleep(4)
29
+ end
30
+ sleep(3)
31
+ end
32
+ end
@@ -0,0 +1,6 @@
1
+ --color
2
+ --format=html:result.html
3
+ --format=progress
4
+ --loadby random
5
+
6
+
@@ -0,0 +1,40 @@
1
+ #require 'rubygems'
2
+ #require 'spec'
3
+ #require 'base64'
4
+ #require 'fileutils'
5
+ #
6
+ ##require "selenium/client"
7
+ ##require "selenium/rspec/spec_helper"
8
+ ##require File.expand_path(File.dirname(__FILE__) + "/rspec_extensions")
9
+ #require File.expand_path(File.dirname(__FILE__) + "/reporting/selenium_test_report_formatter")
10
+ #
11
+ #require "selenium/rspec/rspec_extensions"
12
+ #require "selenium/rspec/reporting/selenium_test_report_formatter"
13
+ #
14
+ #Spec::Runner.configure do |config|
15
+ #
16
+ # config.prepend_after(:each) do
17
+ # begin
18
+ # if actual_failure?
19
+ # Selenium::RSpec::SeleniumTestReportFormatter.capture_system_state(@selenium_driver, self)
20
+ # @selenium_driver.close_current_browser_session
21
+ # end
22
+ # if @selenium_driver.session_started?
23
+ # @selenium_driver.set_context "Ending example '#{self.description}'"
24
+ # end
25
+ # rescue Exception => e
26
+ # #STDERR.puts "Problem while capturing system state" + e
27
+ # end
28
+ # end
29
+ #
30
+ # config.append_before(:each) do
31
+ # begin
32
+ # if @selenium_driver && @selenium_driver.session_started?
33
+ # @selenium_driver.set_context "Starting example '#{self.description}'"
34
+ # end
35
+ # rescue Exception => e
36
+ # #STDERR.puts "Problem while setting context on example start" + e
37
+ # end
38
+ # end
39
+ #
40
+ #end
@@ -0,0 +1,36 @@
1
+ require File.dirname(__FILE__) + '/../../config/selenium-setup'
2
+
3
+ ##########################################
4
+ # Description: Test Spec; automation test to validate selenium is working
5
+ # Prerequisite: N/A
6
+ # Jira Issue: none
7
+ # Author: Scott Gillenwater
8
+ ##########################################
9
+
10
+ describe "Test (test/test_spec.rb)" do
11
+ before :all do
12
+ start_selenium_session "http://www.google.com"
13
+ @googleSearchScreen = Google_Search_Screen.new @selenium_driver
14
+ @googleResultScreen = Google_Result_Screen.new @selenium_driver
15
+ end
16
+
17
+ after :all do
18
+ stop_selenium_session
19
+ end
20
+
21
+ it "Go to Google search page" do
22
+ @googleSearchScreen.page.go
23
+ end
24
+
25
+ it "Enter 'Google' into search textbox" do
26
+ @googleSearchScreen.search_textbox.type "Google"
27
+ end
28
+
29
+ it "Click Google Search button" do
30
+ @googleSearchScreen.googleSearch_button.click
31
+ end
32
+
33
+ it "should display link with text 'Google'" do
34
+ @googleResultScreen.html_link("Google").exist.should be_true
35
+ end
36
+ end
@@ -0,0 +1,13 @@
1
+ ##########################################
2
+ # Description: Test Spec; automation test to validate selenium is working
3
+ # Prerequisite: N/A
4
+ # Jira Issue: none
5
+ # Author: Scott Gillenwater
6
+ ##########################################
7
+
8
+ describe "Test (test/test_spec.rb)" do
9
+ it "Go to Google search page"
10
+ it "Enter 'Google' into search textbox"
11
+ it "Click Google Search button"
12
+ it "should display link with text 'Google'"
13
+ end
@@ -0,0 +1,328 @@
1
+ Welcome to the official Ruby driver for [Selenium Remote Control](http://selenium-rc.openqa.org)
2
+
3
+ Mission
4
+ =======
5
+
6
+ Provide a **lightweight, simple and idiomatic API to write
7
+ Selenium tests in Ruby**. Focus is also on improving test
8
+ feedback -- especially on failures -- by providing
9
+ out-of-the-box **state-of-the-art reporting capabilities**.
10
+ With screenshots, HTML snapshopts and log captures,
11
+ investigating test failures becomes a breeze.
12
+
13
+
14
+ Install It
15
+ ==========
16
+
17
+ The easiest way to install the install selenium-client using RubyGems:
18
+
19
+ sudo gem install selenium-client
20
+
21
+ Features
22
+ ========
23
+
24
+ * Backward compatible with the old-fashioned, XSL generated Selenium Ruby API.
25
+ See [the generated driver](http://selenium-client.rubyforge.org/classes/Selenium/Client/GeneratedDriver.html) to get an extensive reference.
26
+
27
+ * Idiomatic interface to the Selenium API.
28
+ See [the Idiomatic module](http://selenium-client.rubyforge.org/classes/Selenium/Client/Idiomatic.html)
29
+ for more details.
30
+
31
+ * Convenience methods for AJAX.
32
+ See the [Extensions](http://selenium-client.rubyforge.org/classes/Selenium/Client/Extensions.html)
33
+ for more details.
34
+
35
+ * Flexible wait semantics inline with the trigerring action. e.g.
36
+
37
+ * `click 'the_button_id', :wait_for => :page`
38
+ * `click 'the_button_id', :wait_for => :ajax`
39
+ * `click 'the_button_id', :wait_for => :element, :element => 'new_element_id'`
40
+ * `click 'the_button_id', :wait_for => :no_element, :element => 'disappearing_element_id'`
41
+ * `click 'the_button_id', :wait_for => :text, :text => 'New Text'`
42
+ * `click 'the_button_id', :wait_for => :text, :text => /A Regexp/`
43
+ * `click 'the_button_id', :wait_for => :text, :element => 'notification_box', :text => 'New Text'`
44
+ * `click 'the_button_id', :wait_for => :no_text, :text => 'Disappearing Text'`
45
+ * `click 'the_button_id', :wait_for => :no_text, :text => /A Regexp/`
46
+ * `click 'the_button_id', :wait_for => :no_text, :element => 'notification_box', :text => 'Disappearing Text'`
47
+ * `click 'the_button_id', :wait_for => :effects`
48
+ * `click 'the_button_id', :wait_for => :value, :element => 'a_locator', :value => 'some value'`
49
+ * `click 'the_button_id', :wait_for => :no_value, :element => 'a_locator', :value => 'some value'`
50
+ * `click 'the_button_id', :wait_for => :visible, :element => 'a_locator'`
51
+ * `click 'the_button_id', :wait_for => :not_visible, :element => 'a_locator'`
52
+ * `click 'the_button_id', :wait_for => :condition, :javascript => "some arbitrary javascript expression"`
53
+
54
+ Check out the `click`, `go_back` and `wait_for` methods of the [Idiomatic Module](http://selenium-client.rubyforge.org/classes/Selenium/Client/Idiomatic.html)
55
+
56
+ * Leveraging latest innovations in Selenium Remote Control (screenshots, log captures, ...)
57
+
58
+ * Robust Rake task to start/stop the Selenium Remote Control server. More details in the next section.
59
+
60
+ * State-of-the-art reporting for RSpec.
61
+
62
+ Plain API
63
+ =========
64
+
65
+ Selenium client is just a plain Ruby API, so you can use it wherever you can use Ruby.
66
+
67
+ To used the new API just require the client driver:
68
+
69
+ require "rubygems"
70
+ require "selenium/client"
71
+
72
+ For a fully backward compatible API you can start with:
73
+
74
+ require "rubygems"
75
+ gem "selenium-client"
76
+ require "selenium"
77
+
78
+ For instance
79
+ to write a little Ruby script using selenium-client you could write something like:
80
+
81
+ #!/usr/bin/env ruby
82
+ #
83
+ # Sample Ruby script using the Selenium client API
84
+ #
85
+ require "rubygems"
86
+ gem "selenium-client", ">=1.2.16"
87
+ require "selenium/client"
88
+
89
+ begin
90
+ @browser = Selenium::Client::Driver.new \
91
+ :host => "localhost",
92
+ :port => 4444,
93
+ :browser => "*firefox",
94
+ :url => "http://www.google.com",
95
+ :timeout_in_second => 60
96
+
97
+ @browser.start_new_browser_session
98
+ @browser.open "/"
99
+ @browser.type "q", "Selenium seleniumhq.org"
100
+ @browser.click "btnG", :wait_for => :page
101
+ puts @browser.text?("seleniumhq.org")
102
+ ensure
103
+ @browser.close_current_browser_session
104
+ end
105
+
106
+
107
+ Writing Tests
108
+ =============
109
+
110
+ Most likely you will be writing functional and acceptance tests using selenium-client. If you are a
111
+ `Test::Unit` fan your tests will look like:
112
+
113
+ #!/usr/bin/env ruby
114
+ #
115
+ # Sample Test:Unit based test case using the selenium-client API
116
+ #
117
+ require "test/unit"
118
+ require "rubygems"
119
+ gem "selenium-client", ">=1.2.16"
120
+ require "selenium/client"
121
+
122
+ class ExampleTest < Test::Unit::TestCase
123
+ attr_reader :browser
124
+
125
+ def setup
126
+ @browser = Selenium::Client::Driver.new \
127
+ :host => "localhost",
128
+ :port => 4444,
129
+ :browser => "*firefox",
130
+ :url => "http://www.google.com",
131
+ :timeout_in_second => 60
132
+
133
+ browser.start_new_browser_session
134
+ end
135
+
136
+ def teardown
137
+ browser.close_current_browser_session
138
+ end
139
+
140
+ def test_page_search
141
+ browser.open "/"
142
+ assert_equal "Google", browser.title
143
+ browser.type "q", "Selenium seleniumhq"
144
+ browser.click "btnG", :wait_for => :page
145
+ assert_equal "Selenium seleniumhq - Google Search", browser.title
146
+ assert_equal "Selenium seleniumhq", browser.field("q")
147
+ assert browser.text?("seleniumhq.org")
148
+ assert browser.element?("link=Cached")
149
+ end
150
+
151
+ end
152
+
153
+ If BDD is more your style, here is how you can achieve the same thing using RSpec:
154
+
155
+ require 'rubygems'
156
+ gem "rspec", "=1.2.8"
157
+ gem "selenium-client", ">=1.2.16"
158
+ require "selenium/client"
159
+ require "selenium/rspec/spec_helper"
160
+
161
+ describe "Google Search" do
162
+ attr_reader :selenium_driver
163
+ alias :page :selenium_driver
164
+
165
+ before(:all) do
166
+ @selenium_driver = Selenium::Client::Driver.new \
167
+ :host => "localhost",
168
+ :port => 4444,
169
+ :browser => "*firefox",
170
+ :url => "http://www.google.com",
171
+ :timeout_in_second => 60
172
+ end
173
+
174
+ before(:each) do
175
+ selenium_driver.start_new_browser_session
176
+ end
177
+
178
+ # The system capture need to happen BEFORE closing the Selenium session
179
+ append_after(:each) do
180
+ @selenium_driver.close_current_browser_session
181
+ end
182
+
183
+ it "can find Selenium" do
184
+ page.open "/"
185
+ page.title.should eql("Google")
186
+ page.type "q", "Selenium seleniumhq"
187
+ page.click "btnG", :wait_for => :page
188
+ page.value("q").should eql("Selenium seleniumhq")
189
+ page.text?("seleniumhq.org").should be_true
190
+ page.title.should eql("Selenium seleniumhq - Google Search")
191
+ page.text?("seleniumhq.org").should be_true
192
+ page.element?("link=Cached").should be_true
193
+ end
194
+
195
+ end
196
+
197
+ Start/Stop a Selenium Remote Control Server
198
+ ===========================================
199
+
200
+ Selenium client comes with some convenient Rake tasks to start/stop a Remote Control server.
201
+ To leverage the latest selenium-client capabilities, you may need to download
202
+ a recent nightly build of a standalone packaging of Selenium Remote
203
+ Control. You will find the nightly build at
204
+ http://nexus.openqa.org/content/repositories/snapshots/org/seleniumhq/selenium/server/selenium-server/
205
+
206
+ You typically "freeze" the Selenium Remote Control jar in your `vendor`
207
+ directory.
208
+
209
+ require 'selenium/rake/tasks'
210
+
211
+ Selenium::Rake::RemoteControlStartTask.new do |rc|
212
+ rc.port = 4444
213
+ rc.timeout_in_seconds = 3 * 60
214
+ rc.background = true
215
+ rc.wait_until_up_and_running = true
216
+ rc.jar_file = "/path/to/where/selenium-rc-standalone-jar-is-installed"
217
+ rc.additional_args << "-singleWindow"
218
+ end
219
+
220
+ Selenium::Rake::RemoteControlStopTask.new do |rc|
221
+ rc.host = "localhost"
222
+ rc.port = 4444
223
+ rc.timeout_in_seconds = 3 * 60
224
+ end
225
+
226
+ If you do not explicitly specify the path to selenium remote control jar
227
+ it will be "auto-discovered" in `vendor` directory using the following
228
+ path : `vendor/selenium-remote-control/selenium-server*-standalone.jar`
229
+
230
+ Check out [RemoteControlStartTask](http://selenium-client.rubyforge.org/classes/Selenium/Rake/RemoteControlStartTask.html) and [RemoteControlStopTask](http://selenium-client.rubyforge.org/classes/Selenium/Rake/RemoteControlStopTask.html) for more
231
+ details.
232
+
233
+ State-of-the-Art RSpec Reporting
234
+ ================================
235
+
236
+ Selenium Client comes with out-of-the-box RSpec reporting that include HTML snapshots, O.S. screenshots, in-browser page
237
+ screenshots (not limited to current viewport), and a capture of the latest remote controls for all failing tests. And all
238
+ course all this works even if your infrastructure is distributed (In particular in makes wonders with [Selenium
239
+ Grid](http://selenium-grid.openqa.org))
240
+
241
+ Using selenium-client RSpec reporting is as simple as using `SeleniumTestReportFormatter` as one of you RSpec formatters. For instance:
242
+
243
+ require 'spec/rake/spectask'
244
+ desc 'Run acceptance tests for web application'
245
+ Spec::Rake::SpecTask.new(:'test:acceptance:web') do |t|
246
+ t.libs << "test"
247
+ t.pattern = "test/*_spec.rb"
248
+ t.spec_opts << '--color'
249
+ t.spec_opts << "--require 'rubygems,selenium/rspec/reporting/selenium_test_report_formatter'"
250
+ t.spec_opts << "--format=Selenium::RSpec::SeleniumTestReportFormatter:./tmp/acceptance_tests_report.html"
251
+ t.spec_opts << "--format=progress"
252
+ t.verbose = true
253
+ end
254
+
255
+ You can then get cool reports like [this one](http://ph7spot.com/examples/selenium_rspec_report.html)
256
+
257
+ To capture screenshots and logs on failures, also make sure you
258
+ require the following files in your `spec_helper`:
259
+
260
+ require "rubygems"
261
+ require "spec"
262
+ require "selenium/client"
263
+ require "selenium/rspec/spec_helper"
264
+
265
+ Other Resources
266
+ ===============
267
+
268
+ * Report bugs at http://github.com/ph7/selenium-client/issues
269
+ * Browse API at http://selenium-client.rubyforge.org
270
+
271
+
272
+ Contribute and Join the Fun!
273
+ ============================
274
+
275
+ We welcome new features, add-ons, bug fixes, example, documentation,
276
+ etc. Make the gem work the way you envision!
277
+
278
+ * Report bugs at http://github.com/ph7/selenium-client/issues
279
+
280
+ * I recommend cloning the selenium-client
281
+ [reference repository](http://github.com/ph7/selenium-client/tree/master)
282
+
283
+ * You can also check out the [RubyForge page](http://rubyforge.org/projects/selenium-client)
284
+ and the [RDoc](http://selenium-client.rubyforge.org)
285
+
286
+ * We also have a [continuous integration server](http://xserve.openqa.org:8080/view/Ruby%20Client)
287
+
288
+ * Stories live in [Pivotal Tracker](https://www.pivotaltracker.com/projects/6280)
289
+ * To build, run `rake clean default package`. You can then install the
290
+ generated gem with `sudo gem install pkg/*.gem`
291
+ * You can also run all integration tests with `rake ci:integration`
292
+
293
+
294
+ Core Team
295
+ =========
296
+
297
+ * Philippe Hanrigou (`ph7`): Current Maintainer and main contributor
298
+ * Aslak Hellesoy and Darren Hobbs : Original version of the Selenium Ruby driver
299
+
300
+ Contributors
301
+ ============
302
+
303
+ * Aaron Tinio (`aptinio`):
304
+ - More robust Selenium RC shutdown
305
+ - Support for locator including single quotes in `wait_for_...` methods
306
+ - Do not capture system state on execution errors for pending examples
307
+ (ExamplePendingError, NotYetImplementedError)
308
+ - Auto-highlighting support
309
+
310
+ * Rick Lee-Morlang (`rleemorlang`):
311
+ - Fix for incremental calls to `wait_for_text`
312
+ - Regex support in `wait_for_text`
313
+
314
+ * [Paul Boone](http://www.mindbucket.com) (`paulboone`)
315
+ - Fixed method_missing in selenium_helper to only delegate to methods
316
+ that @selenium responds to
317
+
318
+ * [Adam Greene](http://blog.sweetspot.dm) (`skippy`)
319
+ - Added the ability to redirect output to a log file, when
320
+ launching Selenium Remote Control with the Rake task
321
+
322
+ * [Eliot Sykes](http://blog.eliotsykes.com) (`eliotsykes`)
323
+ - wait_for_visibility [patch](http://github.com/eliotsykes/selenium-client/commit/4c7f3d01aa75a6b1917fbf71335b0069392ed546)
324
+
325
+ * [Frederik Fix](http://github.com/derfred)(`derfred`)
326
+ - Fix escaping bug when dealing with embedded regexes such as
327
+ "webratlink=evalregex:/Pastry Lovers \\(Organizer\\)/"
328
+ [patch](http://github.com/derfred/selenium-client/commit/4342cbb39d1a92b8db8f26ee0dc6c1a8f3287737)