" it()"的含义是什么?在Jasmine?

时间:2014-11-12 08:55:21

标签: jasmine

我想"它"是短语的缩写。但我不知道它是什么。每当我看到这个功能时,我总是试图找出它的含义。

有人可以告诉我这个吗?

5 个答案:

答案 0 :(得分:3)

it('is really much more simple than you think)

it()语法用于告诉Jasmine it('should happen in your test')

答案 1 :(得分:2)

Jasmine是行为驱动开发的测试框架。 功能的目的是测试代码的行为。

它需要一个解释预期行为的字符串和一个测试它的函数。

it("should be 4 when I multiply 2 with 2", function() {
  expect(2 * 2).toBe(4);
});

答案 2 :(得分:1)

Jasmine是一个BDD测试框架(行为驱动开发),不同于" stanndard" TDD(测试驱动开发)您实际上是在测试应用程序的行为。 所以" "指的是对象/组件/类/无论您正在测试什么而不是方法。 想象一下,您正在编写一个日历小部件的测试,在该测试中,您希望测试一旦用户单击小部件更改显示月份的下一个箭头,您将编写如下内容:

   it('should change displayed month once the button is clicked', function(){
     // assertions
   });

所以," "是你的日历小部件,你实际上在说"一旦按下单击按钮,日历小部件应该显示月份#34;。 在TDD中,它将改为:

testButtonArrowClickChangesDisplayedMonth()

最终没有实际差异,这只是风格和可读性的问题。 Jasmine的测试以非常详细的方式定义,因此开发人员可以更好地理解测试的目的是什么。

答案 3 :(得分:0)

这不是缩写,只是单词it

这允许在jasmine中编写非常富有表现力的测试用例,如果遵循该方案,则具有非常易读的输出。

示例:

describe("My object", function () {
    it("can calculate 3+4", function () {
        expect(myObject.add(3, 4)).toBe(7);
    }
});

然后,如果该测试失败,输出将类似于

Test failed: My object can calculate 3+4
Message: 
    Expected 6.99999 to equal 7

正如您所看到的,这个虚构的函数会遇到一些舍入错误。但关键是结果输出非常易读且富有表现力,代码也是如此。

代码中的基本方案是:您describe将要测试的单元,然后测试it的各种功能和状态。

答案 4 :(得分:0)

从文档中

名称 it 是测试目标的代名词,而不是的缩写。 任何东西。它使规格[abbr。用于规范]通过连接功能更具可读性 将其命名,并将参数描述作为完整的句子。

https://jasmine.github.io/api/edge/global.html#it