Selenium Webdriver Java 中的 JavascriptExecutor

标签 java selenium

只是想问一个简单的问题。 我正在学习一些有关测试的知识,但我再次遇到了一个小问题。

在我的代码中,我想调用一个使用 JavascriptExecutor 的方法。

我写:

JavascriptExecutor js = (JavascriptExecutor)driver 

之后我在方法中使用它:

public void clickSearch()
{ js.executeScript("arguments[0].click()", sOmEtHiNg);}

但是,当我开始编写代码时,我得到:空指针异常

但是......当我在我的方法中简单地使用JavascriptExecutor时 例如:

public void clickSearch()
{ ((JavascriptExecutor)driver).executeScript("arguments[0].click()",eight); }

然后一切正常,我没有收到任何错误。

有人可以告诉我哪里犯了导致空指针异常的错误吗?

非常感谢:-)

最佳答案

public void clickSearch()
{ js.executeScript("arguments[0].click()", sOmEtHiNg);}

看起来 js 这里可能为 null,这会引发异常。我们需要确保 js 位于您的 clickSearch() 方法的范围内。你可以试试这个吗:

public void clickSearch()
{
    JavascriptExecutor js = (JavascriptExecutor)driver 
    js.executeScript("arguments[0].click()", sOmEtHiNg);
}

或者可能:

JavascriptExecutor js = (JavascriptExecutor)driver;
clickSearch(js);

public void clickSearch(JavascriptExecutor js)
{
    js.executeScript("arguments[0].click()", sOmEtHiNg);
}

关于Selenium Webdriver Java 中的 JavascriptExecutor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58123335/

相关文章:

java - Map<String, Object> - 搜索对象并将某些值添加到集合中

java - Selenium WebDriver 和 Java permgen 空间错误

java - 如何从随机访问文件中删除记录?

Java Selenium 和 Appium 不起作用无法启动 REST http 接口(interface)监听器

java - Selenium 的成功和失败消息

python - Selenium python 点击​​span类

java - 单击关闭窗口按钮但窗口未关闭

java - 在 Eclipse 调试器中启动后进程暂停

Java:List之于ArrayList,Map之于HashMap,Set之于HashSet?

java - Java 8 中函数类型全等 lambda 表达式的使用