# node:test से Testing — Node.js Fundamentals: Modules, Async और Servers

Source: https://www.geekswithgeeks.com/hi/nodejs/node-test-runner

> Node के built-in test runner और assert module से बिना अतिरिक्त dependencies के unit tests लिखें और चलाएँ।

## Built-in test runner

Node 20 से test runner stable है। `node:test` से `test` import करें और checks के लिए `node:assert` उपयोग करें।

```javascript
// add.test.js
import test from "node:test";
import assert from "node:assert/strict";
import { add } from "./math.js";

test("adds two numbers", () => {
  assert.equal(add(2, 3), 5);
});

test("async works", async () => {
  const data = await Promise.resolve(42);
  assert.equal(data, 42);
});
```

सभी test files चलाएँ, बदलाव watch करें और coverage इकट्ठा करें।

```bash
node --test
node --test --watch
node --test --experimental-test-coverage
```

Tests छोटे और स्वतंत्र रखें, उन्हें behaviour के नाम से पुकारें और हर push पर CI में चलाएँ।

त्वरित जाँच

**Quiz:** Node के built-in tests कौन-सा command चलाता है?

- [x] node --test
- [ ] npm install test
- [ ] node --check
- [ ] node --lint

*Answer:* node --test. `node --test` built-in runner से test files खोजकर चलाता है।
