我正在尝试验证pdf是否包含特定值,为此,我单击生成所述pdf的按钮并在新选项卡中打开它。 在此之后,我切换到新选项卡,然后下载pdf并解析它。如果我在无头模式下不使用Chrome,这一切都有效。 我已经验证驱动程序是否成功切换标签。但是,当我尝试获取URL或甚至尝试运行一个负面的测试用例时,它就会挂起。 使用ChromeDriver 2.33.506106和Selenium 3.6
static boolean verifyPDFText(String textToBeVal) {
try {
URL url = new URL(SeleniumDriver.getCurrentURL())
println url
InputStream file = SeleniumDriver.getStreamForUrl(SeleniumDriver.getCurrentURL());
PDDocument pdDoc = PDDocument.load(file)
String parsedText = new PDFTextStripper().getText(pdDoc)
pdDoc.close()
file.close()
println parsedText
if (parsedText.contains(textToBeVal)) {
assert true
} else {
"Unable to locate text: $textToBeVal"
assert false
}
} catch (MalformedURLException e) {
println "URL is Malforrmed"
println "Exception: $e"
assert false
} catch (IOException e) {
println "IOException:"
println "$e"
assert false
}
}
非常感谢任何帮助!