使用TestNG的Selenium Java,将文本插入到屏幕截图中以查找失败

时间:2018-03-12 09:38:26

标签: java selenium-webdriver testng

我在Java Selenium中使用testNG框架编写了脚本。我可以截取失败的截图。我如何显示一条警告信息(如JoptionPane,...)来定义问题,用某些词来解释错误,任何人都执行诉讼并在拍摄的截图中包含此警告信息?

1 个答案:

答案 0 :(得分:0)

使用 ImageIO 库(内置java库)向屏幕截图添加文本(失败原因)。

注意:在框架中存在屏幕截图代码时添加此逻辑。

以下代码为我工作:

@org.testng.annotations.Test
    public void test() throws IOException {
        System.out.println("inside test");
        open("https://www.google.co.in/");

        File scrFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
        FileUtils.copyFile(scrFile, new File("/Users/naveen/Desktop/screenshot1.png"));
        BufferedImage bi = ImageIO.read(new File("/Users/naveen/Desktop/screenshot1.png"));
        Graphics g = bi.getGraphics();
        g.setFont(g.getFont().deriveFont(30f));
        g.drawString("Hello World!", 100, 100);
        g.dispose();
        ImageIO.write(bi, "png", new File("/Users/naveen/Desktop/test1.png"));
    }

在这里,您可以在出现故障时使用断言原因对hello world!进行参数设置。

另外,用参数替换文件路径。