How do I prevent Watir from auto closing firefox?

I am automating test cases using Ruby and Watir. One of my methods opens the web browser, but as soon as my script leaves the “open browser” method and goes to the next method (filling out forms within the browser), the browser auto closes. When I automate using the IE browser it will not close until it hits the IE.close statement, but with firefox it closes automatically. Is there any way to avoid this?

Code:

require 'rubygems'
require 'watir-webdriver'
require 'rexml/document'

def openbrowser
  $user = "user"
  $pass = "password"

  ff = Watir::Browser.new :firefox
  ff.goto "http://<some website>"
  ff.text_field(:name, "username").set($user)
  ff.text_field(:name, "password").set($pass)
  ff.button(:value,"Sign In").click
  ff.link(:xpath => "html/body/div[1]/div[2]/a[1]").click
  ff.text_field(:name,"userID").set($ID)
  ff.button(:value,"View User").click
  ff.link(:xpath => "html/body/div[1]/ul[1]/li[2]/a").click

  sleep 20
end

# Run Program
openbrowser

  • How to save complete html page with frames/iframes included?
  • Watir webdriver and extjs finding element
  • how to click a link in a table based on the text in a row
  • Failed WATIR installation Server 2003
  • Can a watir browser object be re-used in a later Ruby process?
  • Watir+Cucumber Connection refused
  • Save screenshot with Watir
  • “Watir::Exception::NoMatchingWindowFoundException: browser window was closed” error when using IE 11 x64 with Page-Object
  • 2 Solutions collect form web for “How do I prevent Watir from auto closing firefox?”

    I use the Test Unit class, I open the browser in the setup method and generally close it down in the teardown method, this works for me in IE & Firefox.

    More information here, http://wiki.openqa.org/display/WTR/Test+Unit

    I was attempting to run this code in NetBeans, so this behavior may just be specific to that editor.

    There were two causes I have found for it shutting down, first is when there is an error in the code, the browser will shut down as soon as an exception is thrown. Second, the browser shuts down at the end of the program if there is no sleep established.

    Ruby is the best programming language in the world - Ruby on Rails.