[英]How to load local javascript file into DOM using selenium webdriver?
我有一个javascript文件,可以在脚本标记内写的HTML页面中正常工作,但同时当我尝试读取文件并使用webdriver加载时,它显示了一些异常。 以下是我的代码。
List<String> lines = new ArrayList<String>();
try {
lines = Files.readLines(fileEntry, Charset.defaultCharset());
StringBuilder sb = new StringBuilder();
for (String line : lines) {
sb.append(line);
}
if (!fileEntry.getName().endsWith(".js")) {
continue;
}
JavascriptExecutor je = (JavascriptExecutor) driver;
String script =
"var scriptElt = document.createElement('script');"
+ "scriptElt.type = 'text/javascript';"
+ "scriptElt.innerHtml = " + sb.toString() + ";"
+ "document.body.appendChild(scriptElt);";
je.executeScript(script);`
你错过了报价。 此外,如果文件中有引号,则会导致错误。 这一行:
+ "scriptElt.innerHtml = " + sb.toString() + ";"
它应该是这样的:
+ "scriptElt.innerHtml = '" + sb.toString().replace("'","\\'") + "';"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.