2013-04-25 36 views

回答

5

describeit遵循一个名为BDD模式,这意味着“行为驱动开发”。它只是定义了一个界面,让你觉得你写测试的方式有点不同,至少应该如此。嵌套0​​也可以在功能上对您的测试进行分组,并且生成的报告具有“可读”的感觉。

引用从Mocha docs的例子:

describe('Array', function(){ 
    describe('#indexOf()', function(){ 
     it('should return -1 when the value is not present', function(){ 
      assert.equal(-1, [1,2,3].indexOf(5)); 
      assert.equal(-1, [1,2,3].indexOf(0)); 
     }) 
    }) 
}) 

它读取:

阵列#的indexOf()应返回-1当该值不存在

第一两个描述只是设置(描述/分组)范围,it是运行的实际测试。 #没有特别的意义。在这种情况下,它只是使输出文本/报告看起来更像API文档。

4

'#'没有特殊含义。将#前缀到某个类的方法是一个通用标准。例如Array#indexOf()

我在describe()it()上有完全相同的问题,这些文档没有太多解释。因此我写了一个blog post on a guide to mocha。总之:

  • describe()只是为了分组,你可以嵌套深。也被称为测试套件。

  • it()是一个测试用例

相关问题