HTML5测试框架Jessie(Jasmine)使用方法

介绍

开发Web应用过程中,测试是非常重要的环节。Jasmine(http://pivotal.github.com/jasmine/)是JavaScript行为驱动开发behavior-driven development 的框架,Jessie是Jasmine在Node中的运行器runner。本文将介绍Jessie的安装和使用,在阅读本文前,你需要对JavaScript和NodeJS(http://nodejs.org/)有所了解。

  1. 1.    下载和安装

稳定版本的Jessie可以通过nodeJS中的npm直接安装,输入命令:

npm install Jessie

即可,那么在test\node_modules文件夹下会存在两个文件夹: .bin, jessie。

 

如果需要安装开发版本,可以直接在下载源代码进行安装:

git clone git://github.com/futuresimple/jessie.git

npm install ./jessie

 

  1. 2.    使用方法

进入到我们测试的根目录test目录下,输入node_modules\.bin\jessie (当然,你也可以把jessie文件放入系统的环境变量中,推荐这么做),会出现使用说明:

 

jessie [OPTIONS] [spec dirs/files]

spec是指安装后在test目录下的spec文件夹,如果只输入jessie spec会测试spec下的所有test case。当然,也可以知道跑指定的case,如:

jessie spec\test.js

 

  1. 3.    测试用例写法

下面我们来用一个例子说明具体如何将jessie投入实际开发中,在spec文件夹下新建一个testDemo_spec.js(注意:一定要加入_spec 否则jessie会不识别该文件),输入代码:

describe("A spec", function() {

  it("is just a function, so it can contain any code", function() {

    var foo = 0;

    foo += 1;

    expect(foo).toEqual(1);

  });

 

  it("can have more than one expectation", function() {

    var foo = 0;

    foo += 1;

    expect(foo).toEqual(1);

    expect(true).toEqual(true);

  });

});

运行之后会看到通过2个test case:

 

下面我们将    expect(foo).toEqual(1); 改为    expect(foo).toEqual(2); 再次运行,则会报出一个错误:

 

这个注释说得非常清晰,在testDemo_spec.js 的13行 17列出的错误。

更多详细的例子,大家可以到jasmine的网站去测试:http://pivotal.github.com/jasmine/

至此,相信你已经会使用jessie和nodeJS来写自动测试脚本了。Jessie还有扩展了jasmine的功能,包括:Pending Spec, sugar, CoffeScript等,留给读者自行尝试了。

最后,Jessie同样是TDD的理想选择。

Пожалуйста, обратитесь к странице Уведомление об оптимизации для более подробной информации относительно производительности и оптимизации в программных продуктах компании Intel.