Java org.openqa.selenium.WebDriverException:未知错误:无法读取属性';单击';空的
将错误显示为 (org.openqa.selenium.WebDriverException:未知错误:无法读取 属性“单击”(空) 有人能帮我解决以下问题吗? 通过Java脚本执行器单击元素 要单击的Java脚本执行器方法:Java org.openqa.selenium.WebDriverException:未知错误:无法读取属性';单击';空的,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,将错误显示为 (org.openqa.selenium.WebDriverException:未知错误:无法读取 属性“单击”(空) 有人能帮我解决以下问题吗? 通过Java脚本执行器单击元素 要单击的Java脚本执行器方法: public static void ClickByJS(WebElement element, WebDriver driver){ JavascriptExecutor js = (JavascriptExecutor) driver; js.
public static void ClickByJS(WebElement element, WebDriver driver){
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click();", element);
}
使用(driver.findElement By(Xpath))
的方式如下:
WebElement titleDD = driver.findElement(By.xpath("//div[@aria-
owns='registrationPageTitleSelect-dropdown-list']"));
ClickByJS(titleDD, driver);
public static void ClickByJS(WebElement element, WebDriver driver)
{
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click();", element);
}
使用(FindBy())时显示错误
WebDriver可能尚未初始化?需要初始化页面工厂对象。你能检查一下初始化部分吗?@ShakamuriShaka有什么理由用JSClick()
而不是更强大、更可靠的click()
?检查你是否使用了PageFactory更正它对我有效,谢谢@Subburaj,@yong我修改了PageFactory初始化部分,(删除了作废)公共作废注册页(){PageFactory.initElements(driver,this);}到公共注册页(){PageFactory.initElements(driver,this);}
@FindBy(xpath="//div[@aria-owns='registrationPageTitleSelect-dropdown-
list']")
WebElement SelectTitleDropDown;
public void ValidateSelectTitle()
{
ClickByJS(SelectTitleDropDown, driver);
}