【问题标题】:Why am I getting the error java.lang.IllegalArgumentException: Argument is of an illegal type: org.openqa.selenium.By$ByXPath为什么我收到错误 java.lang.IllegalArgumentException:参数属于非法类型:org.openqa.selenium.By$ByXPath
【发布时间】:2021-12-10 19:58:33
【问题描述】:

我想用 JavascriptExecutor 按一个键。为此我创建了一个类和一个静态方法。

    private static JavascriptExecutor jsExecutor = (JavascriptExecutor)BrowserFactory.getDriver();

public static void clickButton(BaseElement element){
    jsExecutor.executeScript("arguments[0].click()", element.getLocator());
}

但是当我在我的 PageObject 方法中调用按钮单击时,我得到一个错误

    public void clickForJsAlertButton() {
    ScriptManager.clickButton(elementButton);
}

java.lang.IllegalArgumentException: Argument is of an illegal type: org.openqa.selenium.By$ByXPath

我不明白为什么会发生这种情况以及需要做些什么来解决它

【问题讨论】:

    标签: javascript java selenium selenium-webdriver executor


    【解决方案1】:

    jsExecutor - 仅适用于 WebElement

        public static void clickButton(By locator){
        WebElement element = BrowserFactory.getDriver().findElement(locator);
        jsExecutor.executeScript("arguments[0].click()", element);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-25
      • 2012-04-26
      • 1970-01-01
      • 1970-01-01
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多