我试图按标签查找元素,但它似乎无法正常工作。请告诉我有什么问题。
driver.findElement(By.xpath(" // div [@label =' First Name']"))。sendKeys(" MY NAME" );
以下是代码:
<div
data-ng-class="{ 'has-feedback has-success' : rules[0].test(user) && rules[1].test(user) && !usernameUnavailable}"
class="form-group required">
<label
for="username"
class="control-label">
Username
</label>
<div data-ng-show="usernameUnavailable">
Username unavailable
</div>
<input autocomplete="off"
data-ng-enter="usernameChange($event, change, next)"
name="username"
class="form-control"
type="text"
data-ng-model="user.username"
data-ng-trim="true"/>
答案 0 :(得分:1)
//div[@label='First Name']
这没有多大意义 - 它意味着让div
元素的属性 label
等于First Name
。但您有一个label
元素:
//div[label = 'First Name']
或者,如果您实际定位input
,请检查name
属性:
//input[@name = 'username']
如果您仍想使用label
,请使用following-sibling
:
//label[@for = 'username']/following-sibling::input