当前位置: 首页 > 面试题库 >

Selenium中的JavaScriptExecutor是什么?

辛健
2023-03-14
问题内容

Selenium WebDriver中的JavaScript Executor是什么?

它的用途是什么?我们如何在Selenium WebDriver中使用它?

一个例子将不胜感激


问题答案:

JavascriptExecutor

JavascriptExecutor
Selenium 接口,由以下所有类实现:

  • FirefoxDriver
  • ChromeDriver
  • InternetExplorerDriver
  • EdgeDriver
  • OperaDriver
  • SafariDriver
  • RemoteWebDriver
  • EventFiringWebDriver

当您由于跨域策略而有时执行 Selenium
脚本时,浏览器会强制您的脚本执行可能会意外失败并且没有足够的错误日志记录。在创建自己的XHR请求或尝试访问另一个框架时,这尤其相关。

您将在UncaughtDOMException中找到详细的讨论[:在页面中列出iframe时,阻止源为“ http://localhost:8080”的框架访问跨域框架

JavascriptExecutor接口提供以下两种方法:

  • executeScript() :此方法在当前选定的框架或窗口的上下文中执行JavaScript。提供的脚本片段将作为匿名函数的主体执行。在脚本中,您需要使用它document来引用当前文档。请注意,脚本完成执行后,局部变量将不可用,尽管全局变量将继续存在。

  • executeAsyncScript() :此方法在当前所选框架或窗口的上下文中执行一段异步JavaScript。与执行同步JavaScript不同,使用此方法执行的脚本必须通过调用提供的回调来显式表示已完成脚本。此回调始终作为最后一个参数注入执行的函数中。

几个例子:

几个例子:

  • 使用JS输入文字

    String js = "arguments[0].setAttribute('value','"+inputText+"')"
    

    ((JavascriptExecutor) webDriver).executeScript(js, element);

  • 双击JavaScript

    new Actions(driver).moveToElement(myElem, posX, posY).perform();
    

    ((JavascriptExecutor)driver).executeScript(jsDoubleClick, myElem, posX, posY);

  • 通过executeScript()发送可变字符串

    String myValue = "80120804076";
    

    WebElement pesel = driver.findElement(fldPesel);
    jse.executeScript(“arguments[0].value=’” + myValue + “’;”, pesel);

在通过Selenium WebDriver从JavascriptExecutor接口使用executeScript方法时,arguments[0]和arguments [1]是什么意思,也可以找到有关 参数 的详细讨论。

tl; dr

跨域策略文件规范



 类似资料:
  • 如果网页上的JavaScript返回非十进制值,那么什么将是否将返回? 有人能回答这个问题吗?

  • 本文向大家介绍python中的Selenium中的xpath是什么?,包括了python中的Selenium中的xpath是什么?的使用技巧和注意事项,需要的朋友参考一下 Xpath是Selenium中用来唯一标识网页上元素的定位器之一。它遍历DOM以到达具有特定属性(带有/不带有标记名)的所需元素。 xpath可以用下面列出的方式表示- // tagname [@ attribute ='val

  • 本文向大家介绍python中的Selenium中的断言是什么?,包括了python中的Selenium中的断言是什么?的使用技巧和注意事项,需要的朋友参考一下 Selenium中有一些断言,它们是测试用例的验证或检查点。在没有断言的情况下,无法选择确定测试用例是否失败。 有时,我们可能会使用条件语句,例如if – else等,然后在控制台中打印pass / fail的结果。但这只能解决检查日志的问

  • 本文向大家介绍selenium-webdriver 什么是Selenium WebDriver?,包括了selenium-webdriver 什么是Selenium WebDriver?的使用技巧和注意事项,需要的朋友参考一下 示例 Selenium是一套旨在使浏览器自动化的工具。它通常用于跨多个平台的Web应用程序测试。Selenium框架下有一些可用的工具,例如Selenium WebDriv

  • 问题内容: 什么是selenium? 当您打开Selenium的官方页面时,您首先读到的是“什么是Selenium?”中的“ Selenium automates browser”。部分。“selenium的哪个部分适合我?”部分 下面提供了Selenium WebDriver和Selenium IDE之间的选择。由此,我推断出Selenium是一组工具,并且该集合包括IDE,WebDriver

  • 硒是什么? 当你打开Selenium的官方页面,首先看到的是“什么是Selenium”中的“Selenium自动浏览器”。节。“硒的哪一部分对我合适?”下面提供了Selenium WebDriver和Selenium IDE之间的选择。由此,我推断Selenium是一个工具集合,该集合包括IDE、WebDriver API(语言绑定)、网格、Selenium独立服务器、浏览器驱动程序。一个人必须下