As far as I can see you haven't required 'startpage', and I think you'll 
want require_relative if you're doing this all with local files.

Is there any particular reason for breaking your browser control into 
multiple classes? I would have thought a single class (possibly extended 
into multiple files) would suffice, or maybe a class and a module if you 
want to break the commands down a bit.

You'll probably want to get the user input before starting your browser, 
in the first instance at least.

You'll probably want to use something like
if @driver.element(:id, "q").present?
instead of
if @driver.find_element(:id, "q")
as the first returns a boolean while the second returns an object 
(possibly an exception)

-- 
Posted via http://www.ruby-forum.com/.