web-dev-qa-db-ja.com

jestの 'it'と 'test'の違いは何ですか?

私のテストグループには2つのテストがあります。 1つはそれを使用し、もう1つはテストを使用します、そしてそれらは非常によく似た働きをしているようです。それらの違いは何ですか?

describe('updateAll', () => {
  it('no force', () => {
    return updateAll(TableName, ["fileName"], {compandId: "test"})
        .then(updatedItems => {
          let undefinedCount = 0;
          for (let item of updatedItems) {
            undefinedCount += item === undefined ? 1 : 0;
          }
          // console.log("result", result);
          expect(undefinedCount).toBe(updatedItems.length);
        })
  });

  test('force update', () => {
    return updateAll(TableName, ["fileName"], {compandId: "test"}, true)
        .then(updatedItems => {
          let undefinedCount = 0;
          for (let item of updatedItems) {
            undefinedCount += item === undefined ? 1 : 0;
          }
          // console.log("result", result);
          expect(undefinedCount).toBe(0);
        })
  });
});

アップデート:

testJestの公式API にありますが、itはそうではありません。

157
C.Lee

のドキュメント では、 と書かれていますittestの別名です。だから彼らはまったく同じです。

198
musicformellons

他の答えが明らかにしたように、それらは同じことをします。

私はこの2つが1) " RSpec "のようなスタイルテストを可能にするために提供されていると思います。

const myBeverage = {
  delicious: true,
  sour: false,
};

describe('my beverage', () => {
  it('is delicious', () => {
    expect(myBeverage.delicious).toBeTruthy();
  });

  it('is not sour', () => {
    expect(myBeverage.sour).toBeFalsy();
  });
});

または2) " xUnit "のようなスタイルテスト

function sum(a, b) {
  return a + b;
}

test('sum adds 1 + 2 to equal 3', () => {
  expect(sum(1, 2)).toBe(3);
});

ドキュメント:

6
Rich

同じことをしますが、それらの名前は異なり、それとテストの名前との相互作用も異なります。

テスト

あなたの書いたもの

describe('yourModule', () => {
  test('if it does this thing', () => {}
  test('if it does the other thing', () => {}
})

何かが失敗した場合にあなたが得るもの:

yourModule > if it does this thing

それ

あなたが書いたこと:

describe('yourModule', () => {
  it('should do this thing', () => {}
  it('should do the other thing', () => {}
})

何かが失敗した場合にあなたが得るもの:

yourModule > should do this thing

つまり、機能性ではなく読みやすさについてです。私の意見では、itには、失敗したテストの結果を自分で書いていないという結果を読み取るという意味で本当に意味があります。テストの内容をより早く理解するのに役立ちます。

0
gwildu