Referință rapidă

Fișă de Referință Interfață TDD Mocha.js

Ghid rapid pentru interfața TDD din Mocha.js: suite, test, hook-uri setup/teardown, testare asincronă și aserțiuni Chai expect.

· Publicat

Mocha oferă multiple interfețe de testare. În timp ce bdd folosește describe() și it(), interfața tdd folosește convenții clasice în stil xUnit cu suite() și test().

Configurare Interfață TDD

const { expect } = require('chai');

// Configurează Mocha pentru a utiliza interfața TDD
mocha.setup('tdd');

suite('Payment Processing', () => {
  suiteSetup(() => {
    // Rulează o singură dată înaintea tuturor testelor din această suită
  });

  suiteTeardown(() => {
    // Rulează o singură dată după toate testele din această suită
  });

  setup(() => {
    // Rulează înaintea fiecărui test
  });

  teardown(() => {
    // Rulează după fiecare test
  });

  test('validates card expiration date', () => {
    const isValid = validateExpiry('12/28');
    expect(isValid).to.be.true;
  });

  test('handles async network payments', async () => {
    const receipt = await chargeCard(100);
    expect(receipt.status).to.equal('success');
  });
});

Comparație: BDD vs TDD

Concept Interfață BDD (bdd) Interfață TDD (tdd)
Grup de Teste describe("name", () => {}) suite("name", () => {})
Test Individual it("does something", () => {}) test("does something", () => {})
Hook Înainte de Toate before(() => {}) suiteSetup(() => {})
Hook După Toate after(() => {}) suiteTeardown(() => {})
Hook Înainte de Fiecare beforeEach(() => {}) setup(() => {})
Hook După Fiecare afterEach(() => {}) teardown(() => {})

Rularea Testelor TDD prin CLI

Implicit, Mocha CLI folosește interfața BDD. Pentru a rula suite TDD, transmiteți --ui tdd:

mocha --ui tdd test/tdd/*.test.js

Referințe

Subiecte conexe