def open_browser(opts = {})
      puts "[INFO] RWebSpec.Framework currently set to => #{RWebSpec.framework }"
=begin      
      if RWebSpec.framework =~ /watir/i
        RWebSpec.load_watir
        self.class.send(:include, RWebSpec::Driver)
        load(File.dirname(__FILE__) + "/web_page.rb")
        return open_browser_by_watir(opts)
      end

      if RWebSpec.framework =~ /selenium/i    
        RWebSpec.load_selenium
        self.class.send(:include, RWebSpec::Driver)
        load(File.dirname(__FILE__) + "/web_page.rb")
        return open_browser_by_selenium(opts)
      end
=end
      puts "[INFO] No underlying framework is set, try to determine browser: #{opts.inspect}"
      if opts.class == Hash
        if opts[:browser] 
          
          if opts[:browser].to_s =~ /ie/i || opts[:browser].to_s =~ /internet\sexplorer/i
            puts "[INFO] based on browser, set to Watir"
            RWebSpec.framework = "Watir"
            self.class.send(:include, RWebSpec::Driver)
            # Reload abstract web page to load driver
            load(File.dirname(__FILE__) + "/web_page.rb")
            return open_browser_by_watir(opts)   
          end
          
          puts "[INFO] based on browser, set to Selenium"          
          # not IE, using selenium
          RWebSpec.framework = "Selenium"
          self.class.send(:include, RWebSpec::Driver)
          load(File.dirname(__FILE__) + "/web_page.rb")
          return open_browser_by_selenium(opts)   
          
        end
      end

      puts "[INFO] browser type not specified, decide framework based on platform"
      if RUBY_PLATFORM =~ /mingw/
        # if it is Windows, set to Watir
        RWebSpec.framework = "Watir"
        self.class.send(:include, RWebSpec::Driver)
        puts "[INFO] Extends of RWebSpec::Driver"
        load(File.dirname(__FILE__) + "/web_page.rb")
        return open_browser_by_watir(opts) 
      else
        RWebSpec.framework = "Selenium"
        self.class.send(:include, RWebSpec::Driver)
        load(File.dirname(__FILE__) + "/web_page.rb")
        # using extend somehow does not work for RSpec
        # extend RWebSpec::Driver          

        return open_browser_by_selenium(opts)   
      end

    end
def open_browser(opts = {})
      puts "[INFO] RWebSpec.Framework currently set to => #{RWebSpec.framework }"
=begin      
      if RWebSpec.framework =~ /watir/i
        RWebSpec.load_watir
        self.class.send(:include, RWebSpec::Driver)
        load(File.dirname(__FILE__) + "/web_page.rb")
        return open_browser_by_watir(opts)
      end

      if RWebSpec.framework =~ /selenium/i    
        RWebSpec.load_selenium
        self.class.send(:include, RWebSpec::Driver)
        load(File.dirname(__FILE__) + "/web_page.rb")
        return open_browser_by_selenium(opts)
      end
=end
      puts "[INFO] No underlying framework is set, try to determine browser: #{opts.inspect}"
      if opts.class == Hash
        if opts[:browser] 
          
          if opts[:browser].to_s =~ /ie/i || opts[:browser].to_s =~ /internet\sexplorer/i
            puts "[INFO] based on browser, set to Watir"
            RWebSpec.framework = "Watir"
            self.class.send(:include, RWebSpec::Driver)
            # Reload abstract web page to load driver
            load(File.dirname(__FILE__) + "/web_page.rb")
            return open_browser_by_watir(opts)   
          end
          
          puts "[INFO] based on browser, set to Selenium"          
          # not IE, using selenium
          RWebSpec.framework = "Selenium"
          self.class.send(:include, RWebSpec::Driver)
          load(File.dirname(__FILE__) + "/web_page.rb")
          return open_browser_by_selenium(opts)   
          
        end
      end

      puts "[INFO] browser type not specified, decide framework based on platform"
      if RUBY_PLATFORM =~ /mingw/
        # if it is Windows, set to Watir
        RWebSpec.framework = "Watir"
        self.class.send(:include, RWebSpec::Driver)
        puts "[INFO] Extends of RWebSpec::Driver"
        load(File.dirname(__FILE__) + "/web_page.rb")
        return open_browser_by_watir(opts) 
      else
        RWebSpec.framework = "Selenium"
        self.class.send(:include, RWebSpec::Driver)
        load(File.dirname(__FILE__) + "/web_page.rb")
        # using extend somehow does not work for RSpec
        # extend RWebSpec::Driver          

        return open_browser_by_selenium(opts)   
      end

    end
open a browser, and set base_url via hash, but does not acually

 example:
   open_browser :base_url => http://localhost:8080, :browser => :ie

 There are 3 ways to set base url
   1. pass as first argument
   2. If running using TestWise, used as confiured
   3. Use default value set


 New Options:
    :browser => :ie | :firefox | :chrome | :safari