《Node.js项目实践:构建可扩展的Web应用》

80520394 2015-06-28

    前言:

        首先很感谢社区,这次又有一本不错的 Node.js 的书,而且来自国内有名的 75team 的翻译。

    正文:

        本书《第三章 Node.js 基于 Mocha 的测试驱动开发和行为驱动开发》一上来还是讲 TDD 和 BDD,其实对于一般的读者,对测试本来就不是很在意,但是还是建议大家关注一下,比较测试也是相对比较重要的,特别对于比较大型的 Node.js 项目来讲。

         TDD:测试驱动开发,敏捷开发技术。

  • 提供代码质量
  • REST API 必须用 TDD

         BDD:行为驱动开发

  • 基于 TDD
  • 鼓励产品负责人和开发者合作 

      后面介绍了非常有名气的 Mocha  

     1、安装:

      本书作者还是很严谨的,说明了安装一个全局的特定版本的,这样也不会出现新版本和本书内容不一致

npm install -g [email protected]

      当然一般大部分人都会遇到权限问题,向下面一样,加上 sudo 就可以了:

sudo npm install –g [email protected]

     注释:全局安装的好处,你可以在任何目录下执行 mocha 命令

    那 Mocha 有什么好处呢?

  • 获取测试报告
  • 支持异步模式
  • 丰富的可配置项

   安装成功后,可以在命令行输入:

mocha -h

  

    如果安装成功后,应该会输出 Mocha 的帮助信息,当然你也可以输入:

mocha -version

    这样可以获取当前安装的 Mocha 版本号。

    当然前面也提到了它又丰富的可配置项,所以还有一大堆的命令等着你去发掘。

    本书除了 Mocha,也提到了几个类似的工具:

  • NodeUnit
  • Jasmine
  • Vows

    后面也提到了用 Node.js 的原生模块 assert 来进行 TDD,这个现在在很多的代码库里面都很常见地可以看到它的存在。虽然它功能比较少,但是对于一般的测试都是足够了。

   《第六章 在 Node.js 应用中使用 session 和 OAuth 进行用户认证和授权》 这个章节对于实战意义还是很大的,适合大部分的读者看看,里面也提到了非常流行的 Express.js ,使用它的中间件来进行权限管理。

  • 基于 token 的用户认证
  • 基于 session 的用户认证

    里面也提到了几个非常有名的权限模块:

  • Everyauth

     可以在任何基于 Express.js 的应用中实现 OAuth,自带市面上大部分第三方的 OAuth 配置,包含接口地址,参数等,非常方便。

相关推荐