Got the following error for this script `<main>': undefined local variable or method `uname' for main:Object (NameError)
thanks. On Monday, October 1, 2012 6:46:24 PM UTC-7, Joe Fl wrote: > Hi, > > I guess if you wanted a default username and password when one isn't > provided you could do this. (I did not test this to see if it works.) > > require 'watir' > require 'rubygems' > $browser = Watir::IE.new > > class Login > > def login_by_uname(uname,pwd) > if uname.nil? and pwd.nil? > uname = "[email protected] <javascript:>" > pwd = "abcd1234" > end > $browser.goto("http://mail.yahoo.com") > puts "Correct URL" > $browser.text_field(:id, "username").set('uname') > $browser.text_field(:id, "passwd").set('pwd') > $browser.button(:id, ".save").click > end > > end > > #uname = "[email protected] <javascript:>" => Commented out > #pwd = "abcd1234" => Commented out > > lgn = Login.new() > lgn.login_by_uname(uname,pwd) > > On Mon, Oct 1, 2012 at 1:43 PM, Oscar Rieken <[email protected]<javascript:>> > wrote: > > to me this seems like a simple problem of not really understanding ruby > and > > how classes and methods work I would suggest to pick up the pickaxe book > > http://pragprog.com/book/ruby3/programming-ruby-1-9 > > > > def some_method(username, password) > > user_name_element.set username > > user_password_element.set password > > end > > > > when you call the method you use the actual params and not the > "placeholder" > > params > > > > some_method([email protected] <javascript:>, oranges) > > > > > > > > > > > > > > > > > > On Mon, Oct 1, 2012 at 1:10 PM, newlearner > > <[email protected]<javascript:>> > wrote: > >> > >> Sort of. Though I quite didn't understand why I need to supply values > in > >> both places, in the method and to the parameters. If I remove the > following > >> > >> uname = "[email protected]" > >> pwd = "abcd1234" > >> > >> I got following error: > >> "undefined local variable or method 'uname' for main:object <Name > Error> > >> *********** > >> > >> On Monday, October 1, 2012 9:56:43 AM UTC-7, Joe Fl wrote: > >>> > >>> Hi, > >>> > >>> So the solutions we provided was what you were looking for? > >>> > >>> Thank you, > >>> Joe > >>> > >>> On Mon, Oct 1, 2012 at 12:50 PM, newlearner <[email protected]> > wrote: > >>> > > >>> > Thank you. Though it worked only if I supply the values for the > >>> > arguements > >>> > in the method as well. So to give an example, I am pasting the code > >>> > with the > >>> > incorrect credentials you provided. (I have used correct login > >>> > credentials). > >>> > I have also taken Zeljko suggestion to start method name with lower > >>> > case. > >>> > > >>> > require 'watir' > >>> > require 'rubygems' > >>> > $browser = Watir::IE.new > >>> > class Login > >>> > def loginbyuname(uname,pwd) > >>> > $browser.goto("http://mail.yahoo.com") > >>> > puts "Correct URL" > >>> > $browser.text_field(:id, > >>> > "username").set('[email protected]') > >>> > $browser.text_field(:id, "passwd").set('abcd1234') > >>> > $browser.button(:id, ".save").click > >>> > end > >>> > > >>> > end > >>> > uname = "[email protected]" > >>> > pwd = "abcd1234" > >>> > lgn = Login.new() > >>> > lgn.loginbyuname(uname,pwd) > >>> > > >>> > ********** > >>> > > >>> > On Sunday, September 30, 2012 5:40:56 PM UTC-7, Joe Fl wrote: > >>> >> > >>> >> Hi, > >>> >> > >>> >> I tested this but with incorrect credential but this works. Hope > this > >>> >> helps. > >>> >> > >>> >> require 'watir' > >>> >> require 'rubygems' > >>> >> $browser = Watir::IE.new > >>> >> > >>> >> class Login > >>> >> > >>> >> def LoginByUname(uname,pwd) > >>> >> $browser.goto("http://mail.yahoo.com") > >>> >> puts "Correct URL" > >>> >> $browser.text_field(:id, "username").set('uname') > >>> >> $browser.text_field(:id, "passwd").set('pwd') > >>> >> $browser.button(:id, ".save").click > >>> >> end > >>> >> > >>> >> end > >>> >> > >>> >> uname = "[email protected]" > >>> >> pwd = "abcd1234" > >>> >> > >>> >> lgn = Login.new() > >>> >> lgn.LoginByUname(uname,pwd) > >>> >> > >>> >> Joe > >>> >> > >>> >> On Sun, Sep 30, 2012 at 6:54 PM, newlearner <[email protected]> > >>> >> wrote: > >>> >> > Hi Joe, thanks for the reply. > >>> >> > > >>> >> > Yes it still failed and the error was > >>> >> > Undefined local variable or method 'browser' for Login:Class > >>> >> > (NameError) > >>> >> > > >>> >> > On Sunday, September 30, 2012 2:51:47 PM UTC-7, Joe Fl wrote: > >>> >> >> > >>> >> >> Hi. > >>> >> >> > >>> >> >> I would drop the $browser and just call the method. Though the > >>> >> >> method > >>> >> >> my > >>> >> >> fail because the self isn't initialized as the $browser. > >>> >> >> > >>> >> >> On Sep 30, 2012 5:44 PM, "newlearner" <[email protected]> > wrote: > >>> >> >>> > >>> >> >>> > >>> >> >>> Here is the code and the the error I am getting: > >>> >> >>> > >>> >> >>> undefined method "LoginByUname" for #<Watir::IE:0x53c756c> > >>> >> >>> <NoMethodError> > >>> >> >>> > >>> >> >>> require 'watir' > >>> >> >>> require 'rubygems' > >>> >> >>> $browser = Watir::IE.new > >>> >> >>> > >>> >> >>> class Login > >>> >> >>> $browser.goto("http://mail.yahoo.com") > >>> >> >>> puts "Correct URL" > >>> >> >>> > >>> >> >>> def LoginByUname(uname,pwd) > >>> >> >>> self.text_field(:id, "username").set('uname') > >>> >> >>> self.text_field(:id, "passwd").set('pwd') > >>> >> >>> self.button(:id, ".save").click > >>> >> >>> end > >>> >> >>> > >>> >> >>> $browser.LoginByUname(@uname,@pwd) > >>> >> >>> end > >>> >> >>> > >>> >> >>> > >>> >> >>> > >>> >> >>> On Friday, September 28, 2012 1:12:45 PM UTC-7, Joe Fl wrote: > >>> >> >>>> > >>> >> >>>> Hi, > >>> >> >>>> > >>> >> >>>> Can you paste your code in here? > >>> >> >>>> > >>> >> >>>> Thank you, > >>> >> >>>> Joe > >>> >> >>>> > >>> >> >>>> On Fri, Sep 28, 2012 at 3:49 PM, newlearner < > [email protected]> > >>> >> >>>> wrote: > >>> >> >>>> > Hi there, > >>> >> >>>> > I am getting this error when I ran the script in ruby. Any > help > >>> >> >>>> > is > >>> >> >>>> > appreciated. > >>> >> >>>> > > >>> >> >>>> > undefined method "LoginByAccountno" for > #<Watir::IE:0x68441e8> > >>> >> >>>> > > >>> >> >>>> > thanks. > >>> >> >>>> > > >>> >> >>>> > -- > >>> >> >>>> > Before posting, please read http://watir.com/support. In > short: > >>> >> >>>> > search > >>> >> >>>> > before you ask, be nice. > >>> >> >>>> > > >>> >> >>>> > [email protected] > >>> >> >>>> > http://groups.google.com/group/watir-general > >>> >> >>>> > [email protected] > >>> >> >>> > >>> >> >>> -- > >>> >> >>> Before posting, please read http://watir.com/support. In > short: > >>> >> >>> search > >>> >> >>> before you ask, be nice. > >>> >> >>> > >>> >> >>> [email protected] > >>> >> >>> http://groups.google.com/group/watir-general > >>> >> >>> [email protected] > >>> >> > > >>> >> > -- > >>> >> > Before posting, please read http://watir.com/support. In short: > >>> >> > search > >>> >> > before you ask, be nice. > >>> >> > > >>> >> > [email protected] > >>> >> > http://groups.google.com/group/watir-general > >>> >> > [email protected] > >>> > > >>> > -- > >>> > Before posting, please read http://watir.com/support. In short: > search > >>> > before you ask, be nice. > >>> > > >>> > [email protected] > >>> > http://groups.google.com/group/watir-general > >>> > [email protected] > >> > >> -- > >> Before posting, please read http://watir.com/support. In short: search > >> before you ask, be nice. > >> > >> [email protected] <javascript:> > >> http://groups.google.com/group/watir-general > >> [email protected] <javascript:> > > > > > > -- > > Before posting, please read http://watir.com/support. In short: search > > before you ask, be nice. > > > > [email protected] <javascript:> > > http://groups.google.com/group/watir-general > > [email protected] <javascript:> > -- Before posting, please read http://watir.com/support. In short: search before you ask, be nice. [email protected] http://groups.google.com/group/watir-general [email protected]
