Hi,

Try using Watir::Waiter.wait_until instead.

Also you might want to consider removing include Watir from your code
to avoid problems when you upgrade to 1.6.2. See
http://wiki.openqa.org/display/WTR/include+Watir for that.

hth,
Gavin

On Nov 12, 12:10 pm, maven999 <[EMAIL PROTECTED]> wrote:
> Hi all,
>
> I am trying to write some code to log into an app via a pop-up window
> and then click some tabs inside it. However, when I try to encapsulate
> the login logic into a method, I get an error on console. I am pasting
> my code below followed by the console error. Any suggestions as to
> what I'm doing wrong? (I am using wait_until because my text
> verification fails as page has not loaded yet).
>
> require 'watir'
> require 'watir/WindowHelper'
> require 'watir/testcase'
> include Watir
>
> class TC_MTests < Watir::TestCase
>
> #Variables
> @url = 'https://1.2.3.4/'
> @login_title = 'Connect to'
> @username = 'abc'
> @password = '123'
>
> #Start browser
> @ie = Watir::IE.start(test_site = @url)
>
> #If prompted about the security certificate, click to bypass
> certification
> if @ie.contains_text("Continue to this website (not recommended).")
>    @ie.link(:text, 'Continue to this website (not
> recommended).').click_no_wait
>     puts "Bypasses the security certificate warning for now."
> end
>
>   def test_Login
> #Use autoit to work with the authentication popup
> #Pauses execution of the script until the requested window exists
>     Watir.autoit.WinWait(@login_title)
>     Watir.autoit.Send(@username)
>     Watir.autoit.Send('{tab}')
>     Watir.autoit.Send(@password)
>     Watir.autoit.Send('{enter}')
>     puts "Login window pop-up appears and credentials passed."
>
> #Wait until landing page has loaded completely
>     wait_until [EMAIL PROTECTED]@username}
>
> #Check if correct user has logged in
>     if @ie.contains_text("Logged in as: " [EMAIL PROTECTED])
>       puts "Test passed. User '" [EMAIL PROTECTED] +"' has logged in."
>     else
>       puts "Test failed. Login fails or incorrect user has logged in "
>     end
> #End of method
>   end
> #End of class
> end
>
> ------------------------------------------------------------------------------------------------------------------------------------------------------
> I get the following error on console:
>
> P:\>ruby c:\ruby\tests\IanTests_temp.rb
> Bypasses the security certificate warning for now.
> Loaded suite c:/ruby/tests/IanTests_temp
> Started
> Login window pop-up appears and credentials passed.
> E
> Finished in 0.297 seconds.
>
>   1) Error:
> test_Login(TC_MTests):
> NoMethodError: undefined method `text' for nil:NilClass
>     c:/ruby/tests/IanTests_temp.rb:37:in `test_Login'
>     c:/ruby/lib/ruby/gems/1.8/gems/watir-1.5.6/./watir.rb:110:in
> `wait_until'
>     c:/ruby/lib/ruby/gems/1.8/gems/watir-1.5.6/./watir/waiter.rb:76:in
> `wait_unt
> il'
>     c:/ruby/lib/ruby/gems/1.8/gems/watir-1.5.6/./watir/waiter.rb:53:in
> `wait_unt
> il'
>     c:/ruby/lib/ruby/gems/1.8/gems/watir-1.5.6/./watir/waiter.rb:76:in
> `wait_unt
> il'
>     c:/ruby/lib/ruby/gems/1.8/gems/watir-1.5.6/./watir.rb:110:in
> `wait_until'
>     c:/ruby/tests/IanTests_temp.rb:37:in `test_Login'
>
> 1 tests, 0 assertions, 0 failures, 1 errors
> _______________________________________________________________________________
> Thanks!
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Watir General" group.
To post to this group, send email to watir-general@googlegroups.com
Before posting, please read the following guidelines: 
http://wiki.openqa.org/display/WTR/Support
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/watir-general
-~----------~----~----~----~------~----~------~--~---

Reply via email to