请按需搭配
一 nodejs 
Node.js是一个Javascript运行环境,实质是对Chrome V8引擎进行了封装。Node.js 不是一个 JavaScript 框架,不同于CakePHP、Django、Rails。Node.js 更不是浏览器端的库,不能与 jQuery、ExtJS 相提并论。Node.js 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言
Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。
二 GRUNT 
GRUNTJavaScript 世界的构建工具
三 karma
Karma的主要目标是为开发人员提供高效的测试环境。 这种环境不需要设置大量的配置,而是开发人员只需编写代码并从测试中立即获得结果。 从而提高你的生产力和创造力。
四 jasmine
Jasmine是一个Javascript的BDD(Behavior-Driven Development)测试框架,不依赖任何其他框架。
五 protractor
Protractor通过程序模拟用户在浏览器中操作来做自动化测试。 Protractor可以为angular应用做自动化测试,它有些api是专门为angular提供的。 如果不是angular应用,也可以用Protractor做自动化测试,只要避开调用angular专属api就可以了
六bower
Bower:就是一个前端包管理工具。能够帮我们管理Web站点上的各种框架,类库等等。主要作用有如下:能够帮助我们跟踪前端包,并且保证他们是最新(或者是你指定的特定版本),Bower能够管理前端里面的HTML,CSS,JS,甚至还可以是图片。Bower还有一个最大的好处,它对我们前端进行了优化。如果多个包依赖于一个包,例如jQuery,那么Bower将只下载jQuery一次,这样就称为扁平依赖,它有助于减少页面加载。