失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > java 执行js selenium_如何在Selenium WebDriver Java中使用JavaScript

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

时间:2022-12-25 03:36:31

相关推荐

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

"}" );

如果觉得《java 执行js selenium_如何在Selenium WebDriver Java中使用JavaScript》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。