Selenium Watir WebDriver发送_键不使用变量?

Selenium Watir WebDriver发送_键不使用变量?,selenium,watir,watir-webdriver,Selenium,Watir,Watir Webdriver,我有一个巨大的搜索条目列表,我想用一个动态建议列表来测试 现在我有这个问题。当我这样做时: @browser.text_field(:name, 'suggestion_list').send_keys("foo") @browser.element(:xpath, '//label[@type=list_items]').wait_until_present @browser.element(:xpath, '//label[@type=list_items]').click line =

我有一个巨大的搜索条目列表,我想用一个动态建议列表来测试

现在我有这个问题。当我这样做时:

@browser.text_field(:name, 'suggestion_list').send_keys("foo")
@browser.element(:xpath, '//label[@type=list_items]').wait_until_present
@browser.element(:xpath, '//label[@type=list_items]').click
line = "foo"
...
@browser.text_field(:name, 'suggestion_list').send_keys(line)
@browser.element(:xpath, '//label[@type=list_items]').wait_until_present
@browser.element(:xpath, '//label[@type=list_items]').click
它工作正常,建议列表打开,我可以等待正确的元素出现,并验证它是否在建议列表中找到

但当我这么做的时候:

@browser.text_field(:name, 'suggestion_list').send_keys("foo")
@browser.element(:xpath, '//label[@type=list_items]').wait_until_present
@browser.element(:xpath, '//label[@type=list_items]').click
line = "foo"
...
@browser.text_field(:name, 'suggestion_list').send_keys(line)
@browser.element(:xpath, '//label[@type=list_items]').wait_until_present
@browser.element(:xpath, '//label[@type=list_items]').click
脚本确实在文本字段中输入了正确的内容,但不会停止等待正确的元素出现


我在这里做错了什么?

你确定它不会等待吗?你能加上stacktrace吗?我确定。当从UI观察时,它看起来像是带有变量的输入,就像输入了enter一样->搜索条件是以“通配符”的形式输入的,UI将移动到搜索结果页面。我也尝试了.set()-选项,但它的作用就像send_键一样;当只使用文本时,效果很好。对于变量,它总是一样的:输入就像是用enter完成的。因为它就像是在添加文本后按enter键一样,如果您尝试这样做会怎么样:
@browser.text\u字段(:name,'suggestion\u list')。发送键(line.chomp)
无可否认,这有点困难。最后,我能够重新登录。谢谢Abe,这实际上帮助了解决这个问题!