gpt4 book ai didi

java - RemoteWebDriver.executeScript() 和 Selenium.getEval() 有什么区别?

转载 作者:行者123 更新时间:2023-11-29 07:13:31 25 4
gpt4 key购买 nike

这有什么区别:

RemoteWebDriver driver = new FirefoxDriver();
Object result = driver.executeScript("somefunction();");

还有这个:

RemoteWebDriver driver = new FirefoxDriver();
Selenium seleniumDriver = new WebDriverBackedSelenium(driver, driver.getCurrentUrl());
String result = seleniumDriver.getEval("somefunction();");

我有一个例子,当第一个命令工作并且第二个命令挂起 Firefox 和其他方式时。我想了解这两个函数之间的区别。

最佳答案

提供的脚本片段将作为匿名函数的主体执行。

 ((JavascriptExecutor)driver).executeScript("somefunction();");

在内部将类似这样的内容注入(inject)到文档中:

return function()
{
somefunction();
}.call();

所以基本上在 webdriver 上,executeScript 同步执行并且可以阻塞。

关于java - RemoteWebDriver.executeScript() 和 Selenium.getEval() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11661539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com