首页 > 代码库 > Selenium-spoon-plugin插件开发

Selenium-spoon-plugin插件开发

对于web系统的自动化测试,selenium使用比较多,它支持多种语言java、python、C#等,本文中使用java。selenium执行case时,支持截图,代码如下:

File file =  ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(file, new File("screen.png"));

后面用Robotium写android自动化的时候,在github上发现android-spoon这个插件,可以将android自动化运行时的截图生成html报表,提供单机图片预览,多机图片比较等功能。于是想到也可以用到selenium上。初步做了实现,后续逐步改进。现在实现的功能有:

  • html浏览单独浏览器上case执行中的截图

  • 预览单个case截图的gif动态图

  • 查看case执行过程中日志(使用log4j)

插件源码https://github.com/yeetrack/selenium-spoon-plugin
使用该插件的selenium样例工程https://github.com/yeetrack/selenium-spoon-sampler

插件生成的报表预览:http://htmlpreview.github.io/?https://github.com/yeetrack/selenium-spoon-sampler/blob/master/target/screenshotResult/report/firefox.html,推荐使用chrome访问。

截图如下:

插件使用方式:
在你的selenium项目的pom中添加下面的依赖:

    <dependency>
        <groupId>com.yeetrack.selenium</groupId>
        <artifactId>spoon</artifactId>
        <version>1.0</version>
    </dependency>

添加plugin:

    <plugin>
        <groupId>com.yeetrack.selenium</groupId>
        <artifactId>spoon</artifactId>
        <version>1.0</version>
        <executions>
            <execution>
                <id>spoon report</id>
                <phase>post-integration-test</phase>
                <goals>
                    <goal>spoon</goal>
                </goals>
            </execution>
        </executions>
    </plugin>

注意:如果在maven repo仓库中找不到selenium-spoon的包,可以将selenium-spoon的包安装到本地maven仓库里,方法是:

  • 下载插件源码,github地址: https://github.com/yeetrack/selenium-spoon-plugin

继续阅读-->