From: Jeremy Bopp Date: 2010-12-27T00:30:55+09:00 Subject: Re: What method to define a random float On 12/26/2010 08:23 AM, Fan Jin wrote: > Hi: > I've applied the watir API to login to a website and input a integer > value into a textfield. According to my task is to test the website's > responding time regarding to distinguished values, it needs to input a > random number everytime. Thus, I've defined a random number by coding: > > @num = rand(5) The subject of your message says that you want a random float rather than a random integer. If you want a random float between 0 and 5, do the following: @num = rand * 5 Otherwise, you're doing fine with the method you're using to get a random integer. > This integer should not exceed than 5. However, I applied the Watir to > write the variable to that corresponding textfield where I coded: > > $browser.text_field(:id, 'keyword_instance_SearchBidMax').set(@num) > > #The variable @num should be any integer which is between 1 and 5. > However, it turned to the error message as following: > > D:/ruby/lib/ruby/gems/1.8/gems/firewatir-1.6.7/lib/firewatir/elements/text_field.rb:199:in > `doKeyPress': undefined method `length' for 4:Fixnum (NoMethodError) You passed your integer to a method that expects a string. That's why something is ultimately calling the length method on the object you passed in. Look up the to_s method for the Integer class and see if that helps you out. -Jeremy