我正在尝试使用Java启动webdriverio。我有两个文件,一个java文件和其他test.js文件来启动web驱动程序。
test.js文件
var webdriverio = require('webdriverio');
var options = {
desiredCapabilities: {
browserName: 'chrome'
}
};
function launchbrowser(){
var client=webdriverio.remote(options).init();
client.url('https://www.google.com');
client.end();
}调用 test.js的Java文件
System.out.println("Launching WebDriver IO");
String testjsFile = System.getProperty("user.dir") + File.separator + "scripts"
+ File.separator + "test.js";
ScriptEngine engine = new ScriptEngineManager().getEngineByName("nashorn");
engine.eval("load('scripts/r.js');");
engine.eval(new FileReader(testjsFile));
Invocable invocable = (Invocable) engine;
invocable.invokeFunction("launchbrowser");但在这种情况下,我无法启动网络驱动程序。如果我不使用r.js文件,那么它给出的错误
要求未定义。
任何人请帮助我解决我们的需求(‘webdriverio’)
发布于 2017-08-30 00:19:05
require不是一个标准的ECMAScript内置函数。您必须使用第三方的需求实现,就像需求一样。
我想上面提到的r.js来自requirejs.org项目。当你评估"r.js“时,你会得到什么错误?
发布于 2020-12-01 07:04:00
https://stackoverflow.com/questions/45933087
复制相似问题