منصوبے کے بارے میں
Sinon.JS ایک مقبول جاوا اسکرپٹ ٹیسٹنگ لائبریری ہے جو یونٹ ٹیسٹ لکھنے کے لیے ٹولز کا ایک جامع سیٹ فراہم کرتی ہے۔ لائبریری تین بنیادی تصورات پیش کرتی ہے: اسپائیز، اسٹبس اور موکس۔ اسپائیز کالز اور آرگیومنٹس کو ریکارڈ کرنے کے لیے فنکشنز کو لپیٹتے ہیں، اسٹبس فنکشنز کو کنٹرول شدہ رویے سے تبدیل کرتے ہیں، اور موکس متوقع رویے کی تصدیق کے لیے دونوں کو یکجا کرتے ہیں۔
لائبریری کو اسٹینڈ اکیلے اور ٹیسٹ فریم ورک سے آزاد بنایا گیا ہے، یعنی اسے کسی بھی ٹیسٹنگ فریم ورک جیسے Mocha، Jasmine، QUnit یا Jest کے ساتھ استعمال کیا جا سکتا ہے۔ اس کا مقصد کوئی عالمی آلودگی نہیں، استعمال میں آسانی، کم سے کم انضمام کی ضروریات، اور کسی بھی ٹیسٹنگ فریم ورک کے ساتھ بلا روک ٹوک ایمبیڈنگ ہے۔
انسٹالیشن npm کے ذریعے سیدھی ہے (`npm install sinon`) یا پروجیکٹ ہوم پیج پر دستیاب براؤزر بلڈز کے ذریعے۔ لائبریری آسان انضمام کے لیے npm پر مبنی CDNs کو بھی سپورٹ کرتی ہے۔
کلیدی خصوصیات میں شامل ہیں:
- اسپائیز: فنکشن کالز، آرگیومنٹس اور واپسی کی اقدار ریکارڈ کریں
- اسٹبس: فنکشنز کو کنٹرول شدہ رویے سے تبدیل کریں
- موکس: متوقع رویے کی تصدیق کے لیے اسپائیز اور اسٹبس کو یکجا کریں
- فییک ٹائمرز: setTimeout، setInterval، Date وغیرہ کے لیے تیار شدہ فییکس
- کوئی عالمی آلودگی نہیں: صاف API جو عالمی نام کی جگہ کو آلودہ نہیں کرتی
پروجیکٹ BSD-3 لائسنس پر عمل کرتا ہے اور کمیونٹی کی شراکت کے ساتھ فعال طور پر برقرار رکھا جاتا ہے۔ یہ منتقلی کے دوران عوامی APIs کی حفاظت کے لیے آرٹیفیکٹ فرسٹ کنٹریکٹ ٹیسٹ استعمال کرتا ہے۔ `lib/` ڈائریکٹری میں تیار کردہ بلڈ آؤٹ پٹ ہوتا ہے اور اسے ریپوزٹری میں شامل نہیں کیا جاتا؛ ڈویلپر اسے `npm run build` کا استعمال کرکے مقامی طور پر دوبارہ تیار کر سکتے ہیں۔
Sinon.JS جاوا اسکرپٹ ایکو سسٹم میں قابل اعتماد، برقرار رکھنے کے قابل یونٹ ٹیسٹ لکھنے کے لیے وسیع پیمانے پر استعمال ہوتی ہے۔ اس کی صاف API اور فریم ورک سے آزاد ڈیزائن اسے مختلف ٹیسٹنگ ماحول میں کام کرنے والے ڈویلپرز کے لیے ایک ورسٹائل انتخاب بناتا ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.