java 执行js selenium_如何在Selenium WebDriver Java中使用JavaScript

根据您之前的问题,我想您想要从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');");

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';" +

"}" );

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值