Watir 设置输入类型的值="text"

Watir Set value of input type="text"

我正在尝试在此范围内设置电子邮件,但在选择和更新时遇到问题。跨度 ID 是动态创建的,但 class 不是

<div class="input input-lg    form-input">

    <span id="foundation-text-input-3535" class="input-label ">Email*</span>

    <input type="text" aria-labelledby="foundation-text-input-3535" placeholder="" value="" autocomplete="off" data-qa="email_input"></div>

应该通过输入元素设置,而不是跨度,对吧?

browser.text_field(data_qa: 'email_input').set email_address

如果您需要以这种方式定位内容,您也可以使用正则表达式:

browser.span(id: /foundation-text-input/)

来自 irb 的结果:

irb(main):001:0> require 'watir'
=> true
irb(main):002:0> browser = Watir::Browser.new
=> #<Watir::Browser:0x6e1ac1ec79323ad4 url="data:," title="">
irb(main):003:0> browser.goto "https://portal.sysco.com/login"
=> "https://portal.sysco.com/login"
irb(main):004:0> browser.text_field(data_qa: 'email_input').set "test"
=> nil
irb(main):005:0> browser.text_field(data_qa: 'email_input').value
=> "test"