使用Gradle下载phantomjs

4 3月

对于Web应用开发,测试中有一个很重要的测试是Functional Test(或者叫Integration Test)。

Functional Test除了需要相关的库以外还需要一个Driver,可以是Chrome,Firefox等等。

因为并不是每一个开发机器或者CI服务器都有浏览器的,所以保证测试的可用性是相当重要的。

常用的方法是将浏览器提前下载,放置在项目目录中,纳入版本管理。这样测试的运行就可以直接使用。

但是这种方法有两个问题:

  • 将大量文件纳入了版本管理中
  • 对于不同平台还需要下载不同平台的Driver

其实还有一个办法就是让构建工具自动下载,下载的时候可以根据平台来下载指定版本。这样即提升了易用性,也降低了切换难度。

这里以phantomjs为例,来看看怎么让Gradle去下载平台相关的phantomjs。

首先明确phantomjs的下载地址,在bitbucket上,https://bitbucket.org/ariya/phantomjs/downloads

文件名是phantomjs+版本号+平台。

首先对于平台的判断使用commons-io库来操作。


判断代码如下:


下载文件也是common-io库中的FileUtils类。


当然下载之后还需要一个解压过程


同样的思路,对于其他情况,比如Chrome也是试用的,只不过下载地址稍有不同。


发表评论

电子邮件地址不会被公开。