CasperJS是一个开源的,用JavaScript编写的,基于PhantomJS的导航脚本和测试工具 ,它简化了定义一个完成的导航操作所需的步骤,还提供了很有用的函数封装,方法,和语法糖。
Casperjs可以应用到以下场景:
Ø 定义、排列页面间导航的步骤
Ø 表单的填充、提交
Ø 点击、跟踪超链接
Ø 区域、页面截图
Ø 测试远程DOM
Ø 记录事件
Ø 资源下载,包括二进制资源
Ø 编写功能测试套件,可以将结果以JUnit XML形式导出
Ø 抓取网页内容(我们的主要场景)
CasperJS可以在Mac、windows和大多数Linux上使用。CasperJS可以结合PhantomJS(Webkit内核)使用,也可以结合SlimerJS(Gecko内核)使用。
依赖phantomjs1.9.0到2.0.0之间版本,其他版本不支持。安装前确保已安装相应版本的phantomjs,但是java目前没有发现结合的api,只能通过执行js文件获取结果。
下载开源软件包http://casperjs.org/,配置casperjs环境变量,运行测试casperjs–version(学习下载的casperjs 1.1.4版本)
新建test.js文件,输入
var casper = require('casper').create();
casper.start('http://casperjs.org/');
casper.then(function() {
this.echo('First Page: ' + this.getTitle());
});
casper.thenOpen('http://phantomjs.org', function() {
this.echo('Second Page: ' + this.getTitle());
});
casper.run();
参考链接:http://casperjs.org
在dos执行casperjstest.js结果如下:
First Page: CasperJS, a navigation scripting and testing utility for PhantomJS a
nd SlimerJS
Second Page: PhantomJS | PhantomJS