注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

学会珍惜

You've been saying for the longest time

 
 
 

日志

 
 

JsTestDriver的使用—Webstorm入门指南  

2012-12-31 09:30:30|  分类: 前端开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
转自:RIA之家

明河曾在年初发了《使用JsTestDriver插件—idea使用技巧》,讲解idea中的JsTestDriver的使用,Webstorm内置JsTestDriver,用于自动化集成测试,JsTestDriver可以快速地在本地各个浏览器上帮你回归单元测试代码,功能颇为实用(但有些蛋疼的缺点,后面明河会论述)。

(PS:js的单元测试火过一段时间,但因为在实践过程中存在种种困难,比如代码的可测试性差,缺少最佳实践,缺少回归工具,缺少覆盖率检测、占用工时的误解等等一系列问题,导致现在js的单元测试很少出现在我们的业务中。明河日后会总结更多这方面的经验分享给大家。)

1.在你的根目录中插入JsTestDriver的配置文件jsTestDriver.conf

内容可能如下:(根据本机目录的实际情况配置)

server: http://localhost:9876
load:
  - assets/3.0/tools/jasmine/jasmine.js
  - assets/3.0/tools/jasmine/jasmineAdapter.js
  - assets/3.0/tools/jasmine/jasmine-html.js
test:
- assets/3.0/apply/1.0/test/*.js
  • server:服务器路径
  • load:依赖脚本,会在test指定的脚本执行前执行
  • test:测试脚本

JsTestDriver简单原理说明:将load和test的脚本移到启动的server服务器上,然后在各个浏览器中运行服务器的脚本,最后将单测得结果集返回给Webstorm。

使用JsTestDriver的注意点:

  • 测试脚本所依赖的所有文件,必须指定;
  • JsTestDriver的测试运行页面是自己创建的,没办法自己指定(这点蛋疼,会造成很多困难);
  • 在ajax的测试中要特别注意,你需要mock方法,不然会出现无法获取数据,导致单测无法进行的问题;
  • JsTestDriver如果使用其他单测类库比如jasmine,需要适配器

2.在工程内引入JsTestDriver

在代码界面右击,寻找到下面的菜单项:

打开创建界面后,指定下配置文件路径:

成功后,右上角会出现JsTestDriver的信息:

3.使用jasmine

jasmine应该是最被广泛使用的js单测类库,所以明河以jasmine的单测运行为例,而不是JsTestDriver(这里指的是JsTestDriver内置的单测类库)。

配置load,引入jasmine和jasmineAdapter:

server: http://localhost:9876
load:
  - assets/3.0/tools/jasmine/jasmine.js
  - assets/3.0/tools/jasmine/jasmineAdapter.js
  - assets/3.0/tools/jasmine/jasmine-html.js

这三个文件可以在明河的代码库中找到。

随便写个测试代码:

server: http://localhost:9876
test:
- assets/3.0/apply/1.0/test/*.js
describe('this is a demo',function(){
     it('demo it',function(){
        expect(false).toBeTruthy();
     })
});

4.运行JsTestDriver

使用快捷键“shift+F10”

有可能会因为缺少服务器路径配置,导致运行失败,没关系,在右下角打开JsTestDriver的界面,填写上url(http://localhost:9876)

点亮浏览器(点击灰色的浏览器图标):

再按“shift+F10”运行之,如果出现类似以下界面,说明运行成功:

Webstorm的确强大,给我们提供了众多便利,就单元测试而言JsTestDriver只是第一步,关键还是开发者将单元测试写起来!以后会给大家分享单测代码层面的最佳实践。

  评论这张
 
阅读(330)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017