Watir :如何在 watir 自动化中在此条件下设置文本?

Watir : How to set text in this condition in watir automation?

我正在尝试设置文本,但它不包含 ID,class 与密码相同。

<form> 
   <div class="form-group">
     <input type="email" 
     placeholder="johndoe@example.com" class="login-form-control"> </div> 
   <div class="form-group">
     <input type="password" placeholder="password" class="login-form-
     control">
</div>
</form>

您可以使用类型属性的差异来定位字段:

browser.text_field(type: 'email').set('user')
browser.text_field(type: 'password').set('password')

如果页面上还有其他 email/password 字段,您可能需要更加具体 - 例如结合 class 属性:

browser.text_field(type: 'email', class: 'login-form-control').set('user')
browser.text_field(type: 'password', class: 'login-form-control').set('password')

另一种选择是使用占位符属性:

browser.text_field(placeholder: 'johndoe@example.com').set('user')
browser.text_field(placeholder: 'password').set('password')

您可以使用 DOM 占位符进行选择

browser.text_field(placeholder: 'johndoe@example.com').set('user')
browser.text_field(placeholder: 'password').set('password')
browser.text_field(placeholder: 'confirm password').set('password')