कृत्रिम बुद्धिमत्ता के साथ परीक्षण जोड़ना
उपयोगकर्ताओं से पहले खराबी पकड़ें।
कृत्रिम बुद्धिमत्ता के साथ परीक्षण जोड़ना, CoddyKit पर वाइब कोडिंग का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह वाइब कोडिंग सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। वाइब कोडिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
परीक्षण आपके ऐप को क्यों बचाते हैं
आपने सहज तरीके से एक ऐप बनाया। आज वह काम करता है। लेकिन अगले सप्ताह आप एआई से कोई सुविधा जोड़ने को कहते हैं और कोई दूसरी चीज़ चुपचाप खराब हो जाती है। परीक्षण छोटे प्रोग्राम होते हैं, जो जाँचते हैं कि आपका ऐप अब भी सही काम कर रहा है।
परीक्षणों को सुरक्षा-जाल समझिए: जब भी आप कोड बदलते हैं, वे दोबारा चलते हैं और कुछ टूटने पर तुरंत चेतावनी देते हैं। एआई के साथ आपको उन्हें हाथ से लिखने की भी ज़रूरत नहीं है — बस बताएँ कि क्या होना चाहिए और एआई से परीक्षण बनवा लें।
वास्तविक परीक्षण कैसा दिखता है
एक परीक्षण आपके कोड को कुछ इनपुट देकर चलाता है और जाँचता है कि आउटपुट आपकी अपेक्षा के अनुसार है या नहीं। यदि ऐसा नहीं है, तो परीक्षण विफल हो जाता है और समस्या की ओर संकेत करता है।
यह एक वास्तविक, चलने योग्य उदाहरण है: एक फ़ंक्शन और उसकी जाँच।
function add(a, b) {
return a + b;
}
// a tiny hand-made 'test'
function expectEqual(actual, expected, label) {
if (actual === expected) console.log('PASS: ' + label);
else console.log('FAIL: ' + label + ' (got ' + actual + ')');
}
expectEqual(add(2, 3), 5, 'adds two numbers');
expectEqual(add(-1, 1), 0, 'handles negatives');एआई से परीक्षण लिखवाएँ
अब आप शायद ही कभी परीक्षण शुरू से लिखते हैं। अपना फ़ंक्शन कर्सर, क्लॉड कोड या कोपायलट में चिपकाएँ और परीक्षण बनाने को कहें। मुख्य बात यह बताना है कि कौन-से मामले महत्वपूर्ण हैं: सामान्य इनपुट, असामान्य इनपुट और सीमांत स्थितियाँ (खाली, शून्य, ऋणात्मक, बहुत बड़ा)।
यहाँ एक प्रॉम्प्ट है जिसे आप कॉपी कर सकते हैं।
Here is my function:
function discount(price, percent) {
return price - (price * percent / 100);
}
Write tests using Vitest. Cover:
- a normal case (100 at 20%)
- 0% discount
- 100% discount
- a negative price (should it even be allowed?)
Use describe/it/expect. Keep it short.परीक्षण चलाने वाले: परीक्षण चलाने का उपकरण
आप परीक्षण हाथ से नहीं चलाते। एक परीक्षण-संचालक आपकी सभी परीक्षण फ़ाइलें ढूँढता है, उन्हें चलाता है और साफ़ PASS/FAIL रिपोर्ट दिखाता है। JavaScript के लिए लोकप्रिय विकल्प विटेस्ट और जेस्ट हैं।
अपने एआई उपकरण से इसे सेट अप करने को कहें — उसे कमांड और कॉन्फ़िगरेशन पता होते हैं, इसलिए आपको उन्हें याद रखने की ज़रूरत नहीं है।
Set up Vitest in this project. Add the dependency, a "test" script in package.json, and a sample test file so I can run `npm test` and see it pass.वास्तविक परीक्षण फ़ाइल की संरचना
अधिकांश JS परीक्षणों की एक जैसी संरचना होती है: describe संबंधित परीक्षणों को समूहों में बाँटता है, it (या test) एक मामला होता है और expect किसी मान की जाँच करता है। एआई यह ढाँचा लगातार बनाता है, इसलिए इसे पहचानना आपके लिए उपयोगी है।
आमतौर पर एआई आपको यही लौटाकर देता है।
import { describe, it, expect } from 'vitest';
import { discount } from './pricing';
describe('discount', () => {
it('takes 20% off 100', () => {
expect(discount(100, 20)).toBe(80);
});
it('returns full price at 0%', () => {
expect(discount(100, 0)).toBe(100);
});
});एआई के लिए विशिष्ट विवरण के रूप में परीक्षण
यह एक बहुत उपयोगी तरीका है: पहले परीक्षण लिखें, फिर एआई से उन्हें सफल बनाने को कहें। परीक्षण आपकी अपेक्षा का सटीक विवरण बन जाते हैं, जिसमें कोई अस्पष्टता नहीं रहती।
इससे काम करने का तरीका बदल जाता है — व्यवहार को अस्पष्ट शब्दों में बताने की बजाय, आप उसे जाँचे जा सकने वाले कोड में बताते हैं।
These tests describe a function I want. Write the `slugify` function so ALL of these pass:
import { slugify } from './slug';
expect(slugify('Hello World')).toBe('hello-world');
expect(slugify(' Spaced Out ')).toBe('spaced-out');
expect(slugify('A/B & C')).toBe('a-b-c');
Return only the function.हमेशा सफल होने वाले परीक्षणों पर भरोसा न करें
एआई कभी-कभी ऐसे परीक्षण लिख देता है जो विफल हो ही नहीं सकते — वे किसी सामान्य रूप से सत्य बात की जाँच करते हैं या बग को ही दोबारा लागू कर देते हैं। ऐसा सफल परीक्षण जो कुछ सिद्ध नहीं करता, परीक्षण न होने से भी बदतर है।
त्वरित जाँच: अपने फ़ंक्शन को जानबूझकर कुछ समय के लिए खराब कर दें। यदि परीक्षण फिर भी सफल रहता है, तो वह नकली परीक्षण है। एआई से कहें कि वह व्यवहार की वास्तव में जाँच करे।
// Suspicious: this passes no matter what discount() returns
it('works', () => {
const result = discount(100, 20);
expect(typeof result).toBe('number'); // too weak!
});
// Better: checks the actual value
it('takes 20% off 100', () => {
expect(discount(100, 20)).toBe(80);
});सीमांत स्थितियों को भी जाँचें
बग असामान्य इनपुट में छिपे होते हैं: खाली स्ट्रिंग, शून्य, ऋणात्मक संख्याएँ, गायब मान और बहुत बड़ी सूचियाँ। यदि आप पूछें, तो एआई इनकी सूची बनाने में बहुत अच्छा है।
ऐसा प्रॉम्प्ट इस्तेमाल करें जो जानबूझकर असामान्य मामलों पर ध्यान दे।
List the edge cases I should test for this function, then write a test for each:
function averageScore(scores) {
return scores.reduce((a, b) => a + b, 0) / scores.length;
}
Think about: empty array, one item, negatives, non-numbers. What should happen for each?परीक्षण अपने-आप चलाएँ (CI)
वास्तविक लाभ यह है कि परीक्षण हर बदलाव पर अपने-आप चलते हैं। जब आप GitHub पर पुश करते हैं, तो GitHub Actions जैसी सेवा आपके पूरे परीक्षण-संग्रह को फिर से चलाती है। कुछ टूटने पर आपको नाराज़ उपयोगकर्ता से नहीं, बल्कि कुछ ही मिनटों में पता चल जाता है।
आपको YAML कॉन्फ़िगरेशन सीखने की ज़रूरत नहीं है। एआई से इसे लिखवा लें।
Create a GitHub Actions workflow that runs `npm install` and `npm test` on every push and pull request. Use Node 20. Put it in .github/workflows/test.yml.व्यावहारिक परीक्षण-लय
लाभ पाने के लिए आपको 100% कवरेज की आवश्यकता नहीं है। सहज तरीके से कोड बनाने वालों के लिए एक व्यावहारिक लय:
- महत्वपूर्ण तर्क का परीक्षण करें — मूल्य-निर्धारण, प्रमाणीकरण, डेटा पार्स करना और उपयोगकर्ताओं को प्रभावित करने वाली कोई भी चीज़।
- शुरुआत में तुच्छ यूआई जोड़-तोड़ छोड़ दें।
- हर बग ठीक करने पर एक परीक्षण जोड़ें, ताकि वह दोबारा न आए।
एआई से पूछें: What are the 5 most important things to test in this app? और वहीं से शुरुआत करें।
परीक्षण रिपोर्ट पढ़ना
जब परीक्षण विफल होते हैं, तो संचालक आपको ठीक-ठीक बताता है कि उसे क्या अपेक्षित था और वास्तव में क्या मिला। घबराएँ नहीं — पूरी रिपोर्ट एआई को कॉपी करके उससे कोड या परीक्षण ठीक करने को कहें (गलत क्या है, यह आप तय करेंगे)।
My test failed with this output:
FAIL src/pricing.test.js
discount > takes 20% off 100
expected 80 but got 120
Here is the discount function: <paste it>
Is the function wrong or the test wrong? Fix the right one and explain.त्वरित जाँच
आप एआई से परीक्षण बनाने को कहते हैं और हर एक तुरंत सफल हो जाता है — यहाँ तक कि फ़ंक्शन को जानबूझकर खराब करने के बाद भी। सबसे संभावित समस्या क्या है?
पुनरावलोकन: परीक्षण आपका सुरक्षा-जाल हैं
आपने सीखा कि एआई द्वारा आपके कोड में बदलाव किए जाने पर परीक्षण क्यों महत्वपूर्ण हैं, परीक्षण कैसा दिखता है और एआई से उन्हें अपने लिए कैसे लिखवाना है। मुख्य आदतें:
- एआई को बताएँ कि कौन-से मामले महत्वपूर्ण हैं, विशेषकर सीमांत स्थितियाँ।
- विटेस्ट जैसे संचालक का उपयोग करें और CI के साथ हर बदलाव पर परीक्षण चलाएँ।
- पुष्टि करें कि परीक्षण वास्तव में विफल हो सकते हैं — जानबूझकर कोड खराब करें।
- जब भी कोई बग ठीक करें, एक परीक्षण जोड़ें।
अगला विषय: एआई द्वारा बनाए गए कोड को सुरक्षित रखना।
एआई शिक्षक के साथ JavaScript सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 25
- पाठ
- 100
अक्सर पूछे जाने वाले प्रश्न
क्या “कृत्रिम बुद्धिमत्ता के साथ परीक्षण जोड़ना” पाठ निःशुल्क है?
हाँ — वाइब कोडिंग अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “कृत्रिम बुद्धिमत्ता के साथ परीक्षण जोड़ना” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। वाइब कोडिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“कृत्रिम बुद्धिमत्ता के साथ परीक्षण जोड़ना” में मैं क्या सीखूँगा?
उपयोगकर्ताओं से पहले खराबी पकड़ें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ वाइब कोडिंग का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या वाइब कोडिंग शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर वाइब कोडिंग शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।
“कृत्रिम बुद्धिमत्ता के साथ परीक्षण जोड़ना” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस वाइब कोडिंग पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर वाइब कोडिंग पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- कृत्रिम बुद्धिमत्ता के साथ परीक्षण जोड़ना
- कृत्रिम बुद्धिमत्ता कोड के लिए सुरक्षा की मूल बातें
- कोड को रखरखाव योग्य रखना
- प्रदर्शन और लागत