请问有人帮我完成这件事。
我想写下载selenium代码。当我试图使用下面的语法。我在eclipse中收到此错误“方法selectByValue(String)未定义类型WebElement”。
我使用以下语法:
ele.selectByIndex(5);
ele.selectByValue("3");
ele.selectByVisibleText(Feb);
提前致谢...
我找到解决方案后更新了。 我已经编写了这样的代码供其他人使用。它对我来说很好。
public void selectCreditCardType(WebElement selectCreditCardType) throws Exception {
logger.info("Select Card");
browser.selectByText(selectCreditCardType, "Visa Card");
browser.Wait(10);
}
答案 0 :(得分:1)
实际上selectByVisibleText();
方法将参数作为String并且您将值作为webelement传递,这就是它显示错误的原因
只需将您的参数类型更改为String(包含在"
中)并尝试
ele.selectByVisibleText("Feb");
已更新:
@FindBy(xpath = "//select[@name='CTYPE']")
private WebElement selectCreditCard;
public void selectCreditCardType() throws Exception
{
logger.info("Select Card");
Select select = new Select(selectCreditCard);
select.selectByIndex(2);
}
答案 1 :(得分:1)
仔细查看错误消息。
"方法selectByValue(String)未定义类型WebElement"
它说你正在做相当于未定义的WebElement.selectByValue()
。 .selectByValue()
定义了Select
。您没有将所有相关代码发布到您的示例中,但您可能拥有类似
WebElement ele = driver.findElement(locator);
ele.selectByIndex(5);
表示ele
属于WebElement
类型。您正尝试在SELECT
元素中设置值,因此您可能希望使用Select
类。你可以这样做
WebElement ele = driver.findElement(locator);
Select select = new Select(ele);
select.selectByIndex(5);
您应该花一些时间来审核Selenium docs for Java,尤其是Select
课程。