如何在Selenium WebDriver Java中使用JavaScript
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何在Selenium WebDriver Java中使用JavaScript,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1739字,纯文字阅读大概需要3分钟。
内容图文
![如何在Selenium WebDriver Java中使用JavaScript](/upload/InfoBanner/zyjiaocheng/715/effba874c8ae48c181ed1ea541cccd7f.jpg)
我想使用Java与WebDriver(Selenium 2)一起使用JavaScript.
我跟随了一些指南并在Getting Started page:第一行有一条指令运行:
$./go webdriverjs
我的问题:从哪个文件夹/位置运行/执行上面提到的命令?
解决方法:
根据您之前的问题,我想您想要从Java的WebDriver运行JavaScript代码段.如果我错了,请纠正我.
WebDriverJs实际上是“只是”另一种WebDriver语言绑定(您可以用Java,C#,Ruby,Python,JS编写测试,甚至可能还有更多语言).特别是这一个是JavaScript,因此允许您用JavaScript编写测试.
如果要在Java WebDriver中运行JavaScript代码,请执行以下操作:
WebDriver driver = new AnyDriverYouWant();
if (driver instanceof JavascriptExecutor) {
((JavascriptExecutor)driver).executeScript("yourScript();");
} else {
throw new IllegalStateException("This driver does not support JavaScript!");
}
我也喜欢这样做:
WebDriver driver = new AnyDriverYouWant();
JavascriptExecutor js;
if (driver instanceof JavascriptExecutor) {
js = (JavascriptExecutor)driver;
} // else throw...
// later on...
js.executeScript("return document.getElementById('someId');");
您可以在此here, in the documenation上找到更多文档,或者最好是in the JavaDocs of JavascriptExecutor.
executeScript()也接受函数调用和原始JS.你可以从它返回一个值,你可以传递许多复杂的参数,一些随机的例子:
>
// returns the right WebElement
// it's the same as driver.findElement(By.id("someId"))
js.executeScript("return document.getElementById('someId');");
>
// draws a border around WebElement
WebElement element = driver.findElement(By.anything("tada"));
js.executeScript("arguments[0].style.border='3px solid red'", element);
>
// changes all input elements on the page to radio buttons
js.executeScript(
"var inputs = document.getElementsByTagName('input');" +
"for(var i = 0; i < inputs.length; i++) { " +
" inputs[i].type = 'radio';" +
"}" );
内容总结
以上是互联网集市为您收集整理的如何在Selenium WebDriver Java中使用JavaScript全部内容,希望文章能够帮你解决如何在Selenium WebDriver Java中使用JavaScript所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。