9AA WebDriver – 执行 JavaScript 代码
嗨冠军! 今天就与浏览器进行一些高质量的互动!! 因此,您能猜出浏览器首选的语言吗? 是的,你说对了。 确实是 JavaScript 。 如果您使用的是 Chrome,则单击“F12”将打开“开发人员工具”,这有助于我们直接从浏览器执行 JavaScript。 某些动作(例如滚动,显示警报等)变得更易于使用 JavaScript 进行管理。
除此之外,在其他情况下,我们可能找不到合适的 Selenium API 来执行特定操作。 但是我们可以通过执行 JavaScript 代码来执行该操作。 Selenium WebDriver 提供了一个界面,可以帮助我们做到这一点!
…您听说过,就像那些名人一样。 好吧,现在是我们该去见那颗璀璨的星星的时候了。 JavascriptExecutor
不需要添加任何外部 JAR 文件或插件。 只需导入一个包即可完成工作,“导入org.openqa.selenium.JavascriptExecutor
”。 它有两种重要的方法可以执行我们的 Selenium 测试中的 JavaScript 代码,以自动化测试中的应用,即
executeAsyncScript(script, args)
导入以下包,import org.openqa.selenium.JavascriptExecutor;
创建一个对象,并通过将其类型转换为JavascriptExecutor
来分配驱动程序对象。
这样创建的JavascriptExecutor
对象允许我们从 Selenium 测试中执行 JavaScript 代码。
此“”方法采用两个参数。 第一个是 JavaScript 代码,第二个是 Java 脚本代码所需的可选参数列表。
让我们看一个测试案例,实现到目前为止所介绍的技术,
- 打开 Firefox 浏览器
- 导航到演示站点()
- 垂直向下滚动页面 100 像素
- 刷新页面
- 导航到 Google 主页
- 使用 JavaScript 代码执行上述三个操作
执行结果:
为每行代码提供了注释,使其易于说明。
在 JUnit 窗格中,绿色条显示测试用例已成功执行。 控制台窗口显示没有任何错误。 它还按预期显示所有打印的消息。
是时候尝试今天的技能了。 是的,戴上安全帽,以免遇到任何异常!
所有代码文件都放置在 中,以方便访问。 您可以为仓库加注星标和分支以方便使用。 请仔细阅读“README.md
”文件以获取明确说明。