react node_env example javascript unit-testing jestjs

javascript - node_env - jest react install



¿Cuál es la diferencia entre ''it'' y ''test'' en broma? (4)

Como las otras respuestas han aclarado, hacen lo mismo.

Creo que los dos se ofrecen para permitir 1) pruebas de estilo " RSpec " como:

const myBeverage = { delicious: true, sour: false, }; describe(''my beverage'', () => { it(''is delicious'', () => { expect(myBeverage.delicious).toBeTruthy(); }); it(''is not sour'', () => { expect(myBeverage.sour).toBeFalsy(); }); });

o 2) pruebas de estilo " xUnit " como:

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

Documentos:

Tengo dos pruebas en mi grupo de prueba. Uno lo usa, el otro usa prueba, y parecen estar funcionando de manera muy similar. ¿Cuál es la diferencia entre ellos?

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); }) }); });

ACTUALIZAR:

Parece que la test está en la API oficial de Jest , pero it está.


Ellos son la misma cosa. Estoy usando TypeScript como lenguaje de programación, y cuando busco en el archivo de definición del código fuente del paquete jest de /@types/jest/index.d.ts, puedo ver los siguientes códigos. Obviamente, hay muchos nombres diferentes de ''prueba'', puede usar cualquiera de ellos.

declare var beforeAll: jest.Lifecycle; declare var beforeEach: jest.Lifecycle; declare var afterAll: jest.Lifecycle; declare var afterEach: jest.Lifecycle; declare var describe: jest.Describe; declare var fdescribe: jest.Describe; declare var xdescribe: jest.Describe; declare var it: jest.It; declare var fit: jest.It; declare var xit: jest.It; declare var test: jest.It; declare var xtest: jest.It;


En los docs dice here : es un alias de test . Entonces son exactamente lo mismo.


Hacen lo mismo, pero sus nombres son diferentes y con eso su interacción con el nombre de la prueba.

prueba

Lo que escribes:

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

Lo que obtienes si algo falla:

yourModule > if it does this thing

eso

Lo que escribes:

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

Lo que obtienes si algo falla:

yourModule > should do this thing

Entonces se trata de legibilidad, no de funcionalidad. En mi opinión, realmente tiene sentido cuando se trata de leer el resultado de una prueba reprobatoria que no ha escrito usted mismo. Ayuda a comprender más rápidamente de qué se trata el examen.