[英]Appium Android: How to test pdf displayed inside WebView
在 Android 中,我想測試包含條款和條件的 PDF,但它顯示在 WebView 中。我可以切換到 WebView,我使用下面的代碼。
String strWebContextName = getContexts().stream().filter(ctx -> ctx.contains(“WEBVIEW_”)).findAny().orElse(null);
if (Objects.nonNull(strWebContextName)) {
((AndroidDriver) getBaseMobileDriver()).context(strWebContextName);
}
然后定位到script標簽,獲取內容
@FindBy(xpath = “//script[@type=“text/javascript” and contains(text(),”_init")]")
private WebElement webElementPdfPath;
String htmlCode = (String) ((JavascriptExecutor) getBaseMobileDriver()).executeScript(“return arguments[0].innerHTML;”, webElementPdfPath);
在此之后我不知道如何進行? 請幫忙
根據我在 WebView 中驗證 PDF 的經驗,您只能使用選擇器搜索有限的內容。 我習慣於只有class
或 PDF 容器的type
屬性。 我一直無法在 PDF 和 XPath 中搜索特定文本(PDF 也不是 HTML 的一部分,但更多的是打開文檔的擴展名)。
試試更簡單的 XPath: //script[@type='text/javascript']
。 這樣你就知道 PDF 打開了,僅此而已。
我也用桌面瀏覽器做到了這一點。 對於瀏覽器,無法識別內部 PDF 元素,而僅限於: //embed[@type='application/x-google-chrome-pdf']
。 如果我需要使用 SikuliX 圖像識別等條件驗證 PDF。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.