J'ai deux tests dans mon groupe de test. L'un l'utilise, l'autre le test, et ils semblent fonctionner de manière très similaire. Quelle est la différence entre eux?
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);
})
});
});
UPDATE:
Il semble que test
soit l'API officielle de Jest , mais it
ne l'est pas.
Comme les autres réponses l'ont précisé, ils font la même chose.
Je crois que les deux sont proposés pour permettre soit 1) des tests de style " RSpec " comme:
const myBeverage = {
delicious: true,
sour: false,
};
describe('my beverage', () => {
it('is delicious', () => {
expect(myBeverage.delicious).toBeTruthy();
});
it('is not sour', () => {
expect(myBeverage.sour).toBeFalsy();
});
});
ou 2) Des tests de style " xUnit " comme:
function sum(a, b) {
return a + b;
}
test('sum adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
Docs:
Les font la même chose, mais leurs noms sont différents et avec cela leur interaction avec le nom du test.
test
Qu'est-ce que tu écris:
describe('yourModule', () => {
test('if it does this thing', () => {}
test('if it does the other thing', () => {}
})
Qu'est-ce que vous obtenez si quelque chose échoue:
yourModule > if it does this thing
il
Ce que vous écrivez:
describe('yourModule', () => {
it('should do this thing', () => {}
it('should do the other thing', () => {}
})
Qu'est-ce que vous obtenez si quelque chose échoue:
yourModule > should do this thing
C'est donc une question de lisibilité et non de fonctionnalité. À mon avis, it
a vraiment un sens lorsqu'il s'agit de lire le résultat d'un test qui a échoué et que vous n'avez pas écrit vous-même. Cela aide à comprendre plus rapidement de quoi parle le test.