instead of explitily asserting the existance of all the elements, Id try and 
come up with an easier way, ( this probably wont work, but it might, and may 
give you some ideas )


def username;$ie.text_field(:name, 'user_name');end
  def password;$ie.text_field(:name, 'password');end
  def remember_me;$ie.checkbox(:name, 'remember_me');end


def existance_check( *elems )


    &elems.each do |el|
      
        raise "Didnt exist" unless eval(el.to_s.exists?)
    end

end


def test_it
    assert_nothing_raised( existance_check :username , :password)
end




----- Original Message -----
From: aidy lewis <[EMAIL PROTECTED]>
Date: Monday, April 2, 2007 10:48 am
Subject: Re: [Wtr-general] little framework

> #Hi,
> 
> #This is what I have got, I don't think it is anything new:
> 
> #each page has a class where objects of that class are mapped
> class Login
>  def username;$ie.text_field(:name, 'user_name');end
>  def password;$ie.text_field(:name, 'password');end
>  def remember_me;$ie.checkbox(:name, 'remember_me');end
>  def sign_in;$ie.button(:value, 'Sign in');end
> end
> 
> 
> #objects that dont neatly fit into a class go into a project module
> module Mission
>   def Mission.log_out;$ie.link(:text, /Log-out/);end
> end
> 
> #browser also has its own module
> module Browser
>   def Browser.open;$ie = Watir::IE.new;end
>   def Browser.goto(url);$ie.goto(url);end
>   def Browser.bring_to_front;$ie.bring_to_front;end
>   def Browser.maximize;$ie.maximize;end
>   def Browser.close;$ie.close;end
> end
> 
> #we have suites of tests with a test set-up and teardown method
> #the set-up is executed before each method, the teardown after
> class MissionSuite < Test::Unit::TestCase
>    include Mission
>    include Browser
> 
>    def setup
>      Browser.open
>      Browser.goto('http://missiontesting.updatelog.com')
>      Browser.bring_to_front
>      Browser.maximize
>      #we use ruby test assertions for are own purposes
>      login = Login.new
>      assert(login.username.exists?)
>      assert(login.password.exists?)
>    end
> 
>    def teardown
>      Browser.close
>    end
> 
>    def test_1
>      login = Login.new
>      login.username.set('aidy')
>      login.password.set('lewis')
>      login.remember_me.set
>      #need to use the watir xml logger or log to xml myself for
> external purposes
> 
>    end
> 
>    def test_2
>      login = Login.new
>      login.username.set('tony')
>      login.password.set('smith')
>      login.remember_me.clear
>      login.sign_in.click
>    end
> 
> 
>    end
> 
> #don't know if anyone has any opinions
> 
> #aidy
> _______________________________________________
> Wtr-general mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/wtr-general
> 
_______________________________________________
Wtr-general mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/wtr-general

Reply via email to