我正在为www.offdesk.com编写测试,当点击“注册”锚点时,它会打开一个pirobox模态窗口,此时我的irb工作正常,但我无法将文本设置到其中的输入文件中
我写道:
browser.link(:id, 'lkNovaConta').click()
browser.text_field(:id, "usuario_nome").wait_until_present
browser.text_field(:id, "usuario_nome").set("Test user")
但是从不传递until_present,因为我有一个带有html内容的JS var,我以为我有一个索引probelm,所以我尝试了:
browser.link(:id, 'lkNovaConta').click()
browser.text_field(:id => "usuario_nome", :index => 1).wait_until_present
browser.text_field(:id => "usuario_nome", :index => 1).set("Test user")
也尝试使用index = 2,index = 0 ......但都失败了
您是否知道如何测试它或任何建议使此功能可测试?
答案 0 :(得分:0)
这对我有用:
$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin10.8.0]
$ gem list watir
*** LOCAL GEMS ***
watir-webdriver (0.3.9)
$ irb
> require "watir-webdriver"
=> true
> browser = Watir::Browser.new
=> #<Watir::Browser:0x91f4b0ffb95e486 url="about:blank" title="">
> browser.goto "http://www.offdesk.com/"
=> "http://www.offdesk.com/"
> browser.a(:id => "lkNovaConta").click
=> []
> browser.text_field(:id => "usuario_nome").set "test"
Selenium::WebDriver::Error::ElementNotVisibleError: Element is not currently visible and so may not be interacted with
(...)
> browser.text_field(:id => "usuario_nome", :index => 1).set "test"
=> ""