簡體   English   中英

如何在Android上拍攝WebElement的圖片?

[英]How to take a picture of a WebElement on Android?

我希望能夠在Android上拍攝元素的圖片,例如,在具有4個畫布的頁面上,我只希望獲得第三個畫布的屏幕抓圖。 然后,我將在頁面上執行某些操作,並使用sikuli確保畫布未更改。 我可以使用以下代碼在桌面上執行此操作:

public void shootWebElement(WebElement element, AndroidDriver driver,String fileName) throws IOException  {

    File screen = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
    Point p = element.getLocation();
    int width = element.getSize().getWidth();
    int height = element.getSize().getHeight();

    BufferedImage img = ImageIO.read(screen);
    BufferedImage dest = img.getSubimage(p.getX(), p.getY(), width,   
                         height);

    ImageIO.write(dest, "png", screen);
    File f = new File(fileName);
    FileUtils.copyFile(screen, f);
}

這段代碼在Android上運行,但是我得到的圖片不是元素的,而是整個視圖的局部圖片(對於用作參數的任何元素,此圖片都是相同的)。

有誰知道解決這個問題的方法嗎?

使用selendroid,不推薦使用AndroidDriver,並且不再對其進行維護。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM