7月 30

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)

继续阅读

7月 28

Java生成动态GIF图片

写selenium自动化时,为了查看运行效果,后给浏览器截图,想到可以生成gif图片来快速预览。看到已经有人实现了,直接拿过来。作者是Kevin Weiner

共涉及到三个java文件,分别是NeuQuant.java,LZWEncoder.javaAnimatedGifEncoder.java,有了这三个文件,我们可以自己编写方法调用

chrome_com.yeetrack.selenium.test.BrowserTest_baiduTest

继续阅读

6月 12

Selenium WebDriver高级用法

掌握selenium初级用法后,来继续深入学习。

选择合适的WebDrvier

WebDriver是一个接口,它有几种实现,分别是HtmlUnitDrvierFirefoxDriverInternetExplorerDriverChromeDriverOperaDriver,除了 InternetExplorerDriver只能在Windows平台运行,其他WebDriver均能跨平台。

如果追求运行速度,HtmlUnitDriver是首选,但是它没有运行界面,不能实时看到运行效果。如果想看到运行效果,可以使用FirefoxDrvier,它会真正打开浏览器,在屏幕上运行,因此我们可以监测页面元素的位置、CSS的值等,但是代价就是速度慢。 继续阅读