我正在尝试设置文本,但它不包含id,并且类与密码相同。
<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>
答案 0 :(得分:3)
您可以使用type属性中的差异来定位字段:
browser.text_field(type: 'email').set('user')
browser.text_field(type: 'password').set('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')
答案 1 :(得分:1)
您可以使用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')