2 回答
TA贡献1815条经验 获得超6个赞
它是 INPUT 字段,只需先清除输入字段,然后为 sendKeys 提供值。请取唯一的名称 attr,您的 ID attrs 不是唯一的。
WebElement ele=driver.findElement(By.name("quantity"));
ele.clear();
ele.sendKeys("2");
TA贡献1831条经验 获得超9个赞
我查看了您尝试访问的网页。您尝试TTPStorePage通过定位器在类中访问的微调器quantity具有动态 ID。每次加载页面时它都会更改。您必须更改定位器策略。
尝试使用以下定位器之一作为数量。
CSS选择器:
By quantity = By.cssSelector("div.quantity > input");
XPath:
By quantity = By.xpath("//div[@class='quantity']/input");
此外,quantityItem您不需要 for 循环的 in 方法,因为您可以将值直接设置为您想要的值,sendKeys因为它是一个input元素。
尝试这个
public void quantityItem() {
driver.findElement(quantity).clear();
driver.findElement(quantity).sendKeys("3");
//pressing up arrow twice would make the spinner value 3
}
添加回答
举报