Javascript 为什么在单元测试组件中总是使用'should<;行动>;`短语形式?

Javascript 为什么在单元测试组件中总是使用'should<;行动>;`短语形式?,javascript,reactjs,unit-testing,jestjs,components,Javascript,Reactjs,Unit Testing,Jestjs,Components,在我使用过的许多javascript库(例如)中,或者在组件库(例如)中 对于其单元测试,请使用应表单:不应响应单击 这个表格是单元测试标准吗 我在哪里可以找到更多关于它的信息 我个人认为a更喜欢使用Given?-When-Then表单来自BDD测试,但是如果应该表单非常流行,我想知道为什么,然后采用它 此表单特定于Jestit(…)函数的使用,该函数表示一个主题,并从Jasmine继承而来,也适用于test(…)。它读作“它应该…”或“测试应该…” 它不能用test()构成一个好句子,因为它通

在我使用过的许多javascript库(例如)中,或者在组件库(例如)中 对于其单元测试,请使用
表单:
不应响应单击

  • 这个表格是单元测试标准吗
  • 我在哪里可以找到更多关于它的信息

  • 我个人认为a更喜欢使用
    Given?-When-Then
    表单来自BDD测试,但是如果
    应该表单
    非常流行,我想知道为什么,然后采用它

    此表单特定于Jest
    it(…)
    函数的使用,该函数表示一个主题,并从Jasmine继承而来,也适用于
    test(…)
    。它读作“它应该…”或“测试应该…”

    它不能用
    test()
    构成一个好句子,因为它通常是一个被测试的单元,应该做一些事情,而不是测试

    在测试报告中,
    description
    description成为主题:

    describe('Foo' => {
      it('should have a button', ...);
      it('should do a request', ...);
    });
    
    读作

    Foo
      ✓ should have a button
      ✓ should do a request
    
    如果没有
    descripe
    块,这就没什么意义了,这在Jasmine中是不允许的,但在玩笑中是允许的

    这种惯例的一个缺点是测试报告被“应该”这个词所污染。由于这个原因,“应该”可以省略,因此它变成“有一个按钮”和“做一个请求”,而不是“应该有一个按钮”和“应该做一个请求”