我正在尝试使用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文件,那么它给出错误
要求未定义。
任何人都可以帮助我解决我们如何解决require('webdriverio')
答案 0 :(得分:0)
require不是标准的ECMAScript内置函数。您必须使用第三方需求实施,例如requirejs。
我认为你上面提到的r.js来自requirejs.org项目。当您评估" r.js"?
时,您会得到什么错误答案 1 :(得分:0)