= Watir Watir, pronounced water, is an open-source (BSD) family of Ruby libraries for automating web browsers. It supports your app no matter what technology it is developed in. They support Internet Explorer on Windows, Firefox and Chrome on Windows, Mac and Linux and Safari on Mac. Project Home:: http://watir.com Source Code:: http://github.com/bret/watir Support:: http://watir.com/support Gem:: https://rubygems.org/gems/watir Gem:: https://rubygems.org/gems/firewatir Gem:: https://rubygems.org/gems/commonwatir Gem:: https://rubygems.org/gems/safariwatir Gem:: https://rubygems.org/gems/watir-webdriver Gem:: https://rubygems.org/gems/celerity == Install You have to install Ruby and RubyGems first. To be able to drive Firefox you have to install Firefox add-on. Detailed installation instructions are at http://watir.com/installation === Windows To install Internet Explorer and Firefox driver: gem update --system gem install watir === Mac To install Firefox driver: sudo gem update --system sudo gem install firewatir To install Safari driver, you have to install Xcode first and then: sudo gem install rb-appscript sudo gem install safariwatir === Linux To install Firefox driver: sudo gem update --system sudo gem install firewatir == Examples Some examples from http://watir.com/examples Loading Watir gem to drive Internet Explorer on Windows require 'watir' Loading FireWatir gem to drive Firefox on Windows/Mac/Linux require 'firewatir' Starting a new browser & and going to our site browser = Watir::Browser.new browser.goto("http://bit.ly/watir-example") Setting a text field browser.text_field(:name => "entry.0.single").set "Watir" Setting a multi-line text box browser.text_field(:name => "entry.1.single").set "I come here from Australia. \n The weather is great here." Setting and clearing a radio button browser.radio(:value => "Watir").set browser.radio(:value => "Watir").clear Setting and clearing check boxes browser.checkbox(:value => "Ruby").set browser.checkbox(:value => "Python").set browser.checkbox(:value => "Python").clear Clicking a button browser.button(:name => "logon").click Clearing, getting and selecting selection list values browser.select_list(:name => "entry.6.single").clear puts browser.select_list(:name => "entry.6.single").options browser.select_list(:name => "entry.6.single").select "Chrome" Clicking a button browser.button(:name => "submit").click Checking for text in a page puts browser.text.include?("Your response has been recorded.") Checking the title of a page puts browser.title == "Thanks!"