首页 > 学习笔记 > CasperJS 介绍
2014
04-10

CasperJS 介绍

什么是CasperJS

官方解释CasperJS 是一个开源的导航脚本和测试工具,使用 JavaScript 基于 PhantomJS 编写,用于测试 Web 应用功能,Phantom JS是一个服务器端的 JavaScript API 的 WebKit。其支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。

它是一个非常棒的工具。非常简单的,用JavaScript编写,满足各种各样的测试需求,它可以方便和我们的开发环境集成. 完美的组合前端和后端.

CasperJS简单来说就是一个网站测试的工具,安装CasperJS后,你可以在命令行运行一个JS文件,例如在控制台下可以运行,运行命令:C:\Users\Administrator>casperjs test d:/casperjs/tests/snap.js –url=http://www.cnmiss.cn,casperjs test是执行的命令,snap.js是自己编写的一个JS脚本,–url=http://www.cnmiss.cn 这个是向脚本中传递的参数。在snap.js脚本中,你可以模拟你在网站上的操作,通过脚本的形式写出来。例如登陆网站,注册用户等,这些都是可以在JS脚本中模拟出来的。以下是snap.js的一个脚本片段。

var BASE_URL = casper.cli.get(‘url’);
// Go to home
casper.test.comment(‘Go to home’);
casper.start(BASE_URL, function() {
this.test.pass(‘Home was loaded’);
});
// Go to login page
casper.then(function() {
this.click(‘div.quick-access li.last a’);
this.test.pass(‘login page was loaded’);
});
casper.then(function() {
this.click(‘div.account-login div.buttons-set button’);
this.test.pass(‘register page was loaded’);
});
// Fill login form and submit
casper.then(function() {
this.test.info(‘Current location is ‘ + this.getCurrentUrl());
this.fill(‘#form-validate’, {
‘firstname’: ‘stamba’,
‘lastname’: ‘stambic’,
’email’: ‘stamba@stamba.com’,
‘password’: ‘johndoe123’,
‘confirmation’: ‘johndoe123’
}, true);
this.test.pass(‘form populated’);
});
// Registration goes well
casper.then(function() {
this.test.info(‘Current location is ‘ + this.getCurrentUrl());
this.test.pass(‘Registered’);
});
// Account dashboard welcome
casper.then(function() {
//this.test.assertTextExists(‘Hello, stamba stambic!’);
this.test.assertTextExists(‘Hello, stamba stambic!’, ‘page body contains “Hello, stamba stambic!”‘);
this.test.info(‘Current location is ‘ + this.getCurrentUrl());
this.test.pass(‘Dashboard in’);
});
casper.run(function() {
this.test.done();
});

这段脚本的做作用是登陆网站,然后注册一个用户。

最后编辑:
作者:admin
这个作者貌似有点懒,什么都没有留下。