4

我正在涉足 node.js 和 coffeescript,我想知道对于这些技术来说什么是好的单元测试和验收测试设置。项目的数据组件(后端/Web服务器/数据库)使用的是coffeescript和node.js,视图和组件将位于coffeescript/javascript中(使用钛appcelerator),它们是非常独立的,但如果它们可以使用相同的两者的测试框架会很酷。

经过一番搜索,我听到的名字是 Jasmine、Zombie 和 Mocha。

任何帮助将不胜感激谢谢。

更新:

我忘了补充一下,我习惯于使用 rails 进行开发,并使用 rspec 进行单元测试,使用 Cucumber 进行验收测试。

4

2 回答 2

3

MochaVowsJasmine是最知名的。(我没听说过僵尸)。使用哪一个是一种意见问题。我们发现 Vows 非常重量级。Jasmine 朝着更好的方向发展,但 Mocha 目前正在做这项工作。我们在 Mocha 的 BDD 风格单元测试中取得了不错的成功。这是一个例子

Scout = require '../../Scout'
FilteringStrategy = require '../../models/filteringStrategies/FilteringStrategy'
FormattingStrategy = require '../../models/formattingStrategies/FormattingStrategy'
RetrievalStrategy = require '../../models/retrievalStrategies/RetrievalStrategy'
EchoInputStrategy = require '../../models/retrievalStrategies/EchoInputStrategy'
CdrStrategy = require './mocks/CdrStrategy'
EveryOtherStrategy = require './mocks/EveryOtherStrategy'
ArrayToStringStrategy = require './mocks/ArrayToStringStrategy'

require 'should'

describe 'When constructed with a custom retrieval technique', ->
  describe '#get', ->
    it 'should return results', (done)->
      data = [0..10]
      connectionScout = new Scout(CdrStrategy)

      connectionScout.get data, (results)->
        results.should.eql [1..10]
        done()

似乎还没有任何完全集成的 Cucumber 式业务可读 DSL 类型的工具用于 NodeJS 和 Coffeescript。

于 2012-04-29T02:50:19.430 回答
0

我使用 Jasmine,它对我有用,你可以通过 coffeescript 编写所有测试用例。

于 2012-04-29T02:48:06.030 回答