𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 డెవలపర్ల కోసం 𝗝𝗲𝘀𝘁 𝗧𝗲𝘀𝘁𝗶𝗻𝗴 𝗚𝘂𝗶𝗱𝗲
టెస్టింగ్ బగ్లను త్వరగా కనుగొనడంలో మీకు సహాయపడుతుంది. ఇది కోడ్ నాణ్యతను మెరుగుపరుస్తుంది. పాత కోడ్ను దెబ్బతీయకుండా కొత్త ఫీచర్లను విడుదల చేయడానికి ఇది మీకు అనుమతిస్తుంది.
Jest అనేది JavaScript మరియు Node.js కోసం ఒక ప్రసిద్ధ టెస్టింగ్ టూల్. దీనిని Meta రూపొందించింది. ఇది TypeScript, React, Next.js, మరియు Express.js లతో పనిచేస్తుంది.
Jest ని ఎందుకు ఉపయోగించాలి?
- దీనికి తక్కువ సెటప్ అవసరం.
- వేగం కోసం ఇది టెస్ట్లను పారలల్గా (parallel) రన్ చేస్తుంది.
- ఇందులో మోకింగ్ (mocking) టూల్స్ ఉంటాయి.
- ఇది కోడ్ కవరేజ్ రిపోర్ట్లను చూపుతుంది.
- ఇది స్పష్టమైన ఎర్రర్ మెసేజ్లను అందిస్తుంది.
Jest ని ఎలా సెటప్ చేయాలి:
- Node.js ప్రాజెక్ట్ను సృష్టించండి:
npm init -y - Jest ని ఇన్స్టాల్ చేయండి:
npm install --save-dev jest - "test": "jest" ని చేర్చడానికి
package.jsonస్క్రిప్ట్లను అప్డేట్ చేయండి npm testతో టెస్ట్లను రన్ చేయండి
ఒక సాధారణ టెస్ట్ను రాయడం:
sum.js సృష్టించండి:
function sum(a, b) {
return a + b;
}
module.exports = sum;
sum.test.js సృష్టించండి:
const sum = require("./sum");
test("adds two numbers", () => {
expect(sum(2, 3)).toBe(5);
});
ముఖ్యమైన Jest టూల్స్:
- Assertions: విలువలను తనిఖీ చేయడానికి
expect()మరియుtoBe()ఉపయోగించండి. - Objects: ఆబ్జెక్ట్లు లేదా అర్రేలను పోల్చడానికి
toEqual()ఉపయోగించండి. - Organization: సంబంధిత టెస్ట్లను గ్రూప్ చేయడానికి
describe()ఉపయోగించండి. - Async: Jest
awaitఉపయోగించి async ఫంక్షన్లను సహజంగా హ్యాండిల్ చేస్తుంది. - Mocks: ఫంక్షన్లను అనుకరించడానికి (simulate)
jest.fn()ఉపయోగించండి. ఇది రియల్ API కాల్స్ లేదా డేటాబేస్ హిట్లను నివారించడం ద్వారా టెస్ట్లను వేగంగా ఉంచుతుంది. - Hooks: టెస్ట్ డేటాను సెటప్ చేయడానికి లేదా క్లీన్ అప్ చేయడానికి
beforeEach()మరియుafterEach()ఉపయోగించండి.
మీ విజయాన్ని కొలవండి:
మీ కవరేజ్ రిపోర్ట్ను చూడటానికి npx jest --coverage రన్ చేయండి. మీ కోడ్లోని ఏ భాగాలకు టెస్ట్లు లేవో ఇది చూపుతుంది.
APIలను టెస్ట్ చేయడం:
API ఎండ్పాయింట్లను టెస్ట్ చేయడానికి Supertest ఉపయోగించండి. రియల్ సర్వర్ను ప్రారంభించకుండానే మీరు స్టేటస్ కోడ్లను తనిఖీ చేయవచ్చు.
Snapshot Testing:
Reactలో matchSnapshot() ఉపయోగించండి. ఇది ప్రస్తుత రెండర్లను సేవ్ చేసిన వెర్షన్లతో పోల్చడం ద్వారా ఊహించని UI మార్పులను కనుగొనడంలో మీకు సహాయపడుతుంది.
ఉత్తమ పద్ధతులు (Best practices):
- ఫలితాలను వివరించే టెస్ట్లను రాయండి.
- అంతర్గత కోడ్ స్ట్రక్చర్ను టెస్ట్ చేయడాన్ని నివారించండి.
- యూనిట్ టెస్ట్లలో రియల్ డేటాబేస్లకు దూరంగా ఉండండి.
- అర్థవంతమైన కవరేజ్ పై దృష్టి పెట్టండి.
Jest లో నైపుణ్యం సాధించడం మీకు నమ్మకమైన సాఫ్ట్వేర్ను నిర్మించడంలో సహాయపడుతుంది.