آموزش تست Node.js با JasmineReviewed by مژده کاوانیان on Oct 11Rating: 4.0
آموزش تست Nod.js با Jasmine

آموزش تست Node.js با Jasmine

درخدمت شما هستیم با آموزش تست Node.js با Jasmine از وب سایت آموزش برنامه نویسی سورس باران. در این جلسه که بخش دهم آموزش Node.js در 3 روز است معرفی و آشنایی کامل با تست Node.js با Jasmine را خواهیم داشت. تست یک عنصر کلیدی برای هر برنامه است. برای Node.js ، چارچوب موجود برای تست کردن ، Jasmine نام دارد.

در اوایل سال 2000 ، فریم ورکی برای آزمایش برنامه های کاربردی JavaScript با نام JsUnit وجود داشت. بعداً این فریم ورک به روز شد و اکنون به عنوان Jasmine  شناخته می شود. جاسمین به واحد آزمایش (Unit Testing) خودکار کمک می کند ، چیزی که هنگام توسعه و بکارگیری برنامه های وب امروزی یک عمل کاملاً کلیدی تلقی می شود. در این آموزش یاد می گیرید که چگونه محیط  خود را با Jasmine  راه اندازی کنید و چگونه می توانید اولین آزمایش Node.js خود را با Jasmine شروع کنید.

آموزش تست Node.js با Jasmine

  • بررسی اجمالی Jasmine برای آزمایش برنامه های js

  • نحوه استفاده از Jasmine برای آزمایش برنامه های js

 

بررسی اجمالی Jasmine برای آزمایش برنامه های Node.js

Jasmine یک فریم ورک آزمایشی ، برپایه ی رفتار توسعه محور (BDD) برای JavaScript است. این به مرورگرها ، DOM یا هر فریم ورک JavaScript متکی نیست. بنابراین ، برای وب سایت ها ، پروژه های Node.js یا هر مکانی که جاوا اسکریپت بتواند آن را اجرا کند ، مناسب است. برای شروع استفاده از Jasmine ، ابتدا باید ماژول های Jasmine لازم را بارگیری و نصب کنید.

در مرحله بعد ، باید محیط اولیه خود را تنظیم کنید و پرونده پیکربندی  Jasmine  را بررسی کنید. مراحل زیر نحوه تنظیم Jasmine در محیط شما را نشان می دهد

مرحله 1) نصب ماژول های NPM

برای استفاده از چارچوب Jasmine  از درون یک برنامه نود ، باید ماژول Jasmine را نصب کنید. برای نصب ماژول نود  Jasmine ، دستور زیر را اجرا کنید.

npm install jasmine-node

 

مرحله 2)  آماده سازی پروژه

با انجام این کار، Jasmine  دایرکتوری  spec و پیکربندی json را برای شما ایجاد می کند. دایرکتوری spec برای ذخیره سازی کلیه فایلهای آزمایشی شما استفاده می شود. با انجام این کار ، Jasmine می داند که تمام آزمایش های شما کجاست ، و سپس می تواند آنها را به ترتیب انجام دهد. از پرونده JSON برای ذخیره اطلاعات خاص پیکربندی در مورد Jasmine استفاده می شود.

برای آماده سازی اولیه محیط Jasmine ، دستور زیر را اجرا کنید.

jasmine init

 

مرحله 3) پرونده پیکربندی خود را بررسی کنید. پرونده پیکربندی در پوشه spec / support به عنوان jasmine.json ذخیره می شود. این پرونده، پرونده های منبع و پرونده های مشخصی را که دوست دارید اجرا کننده ی Jasmine در آن باشد ، ذکر می کند.تصویر زیر نمونه بارز پرونده pack.json برای Jasmine را نشان می دهد.

Node.js Unit Testing Tutorial with Jasmine

 

  1. توجه داشته باشید که فهرست مشخصات در اینجا مشخص شده است. همانطور که قبلاً اشاره شد ، هنگامی که Jasmine  اجرا می شود ، تمام آزمایش های موجود در این فهرست را جستجو می کند.
  2. مورد بعدی که باید به آن توجه کنیم پارامتر spec_files است – این نشان می دهد که هرچه فایلهای آزمایشی ایجاد شوند باید با کلمه کلیدی “spec” به آنها پیوست شوند.

 

نحوه استفاده از Jasmine برای آزمایش برنامه های Node.js

برای استفاده از Jasmine در آزمایش برنامه های Node.js ، یک سری مراحل لازم است دنبال شود. در مثال زیر ما می خواهیم یک ماژول تعریف کنیم که 2 عدد را اضافه می کند که باید آزمایش شوند. سپس یک فایل کد جداگانه را با کد آزمایش تعریف خواهیم کرد و سپس از Jasmine  برای تست عملکرد تابع Add به ترتیب استفاده می کنیم.

مرحله 1) کدی را که باید تست شود را تعریف کنید. ما می خواهیم یک تابع را تعریف کنیم که 2 عدد اضافه شود و نتیجه را برگرداند. این کد در پرونده ای به نام “Add.js” نوشته خواهد شد.

Node.js Unit Testing Tutorial with Jasmine

 

توضیح کد:

  1. کلمه کلیدی ” exports ” برای اطمینان از اینکه مطمین بشوید کارایی های  تعیین شده در این پرونده دقیقا توسط سایر پرونده ها قابل دسترسی است ، استفاده می شود.
  2. سپس ما در حال تعریف تابعی به نام “AddNumber” هستیم. این تابع برای گرفتن 2 پارامتر ، a و b تعریف شده است. این تابع به ماژول ” exports ” اضافه شده است تا این تابع را به عنوان یک تابع عمومی تبدیل کند که توسط سایر ماژول های برنامه قابل دسترسی است.
  3. ما در آخر در حال ایجاد تابع خود هستیم تا مقدار اضافه شده پارامترها را برگردانیم.

 

مرحله 2) در مرحله بعد ، باید کد تست Jasmine خود را تعریف کنیم ، که برای تست تابع “Add ” ما در پرونده Add.js استفاده می شود. کد زیر باید پرونده ای به نام .add-spec.js را وارد کند.

توجه:  کلمه “spec” باید به پرونده تست اضافه شود تا بتوان آن را با Jasmine تشخیص داد.

Node.js Unit Testing Tutorial with Jasmine

 

توضیح کد:

  1. ابتدا باید پرونده js را درج کنیم تا بتوانیم عملکرد “AddNumber” را در این پرونده تست کنیم.
  2. اکنون ما در حال ایجاد ماژول ازمایش خود هستیم. بخش اول ماژول ازمایش توصیف روشی است که اساساً نامی برای آزمون ما می گذارد. در این حالت ، نام آزمون ما ” Addition ” است.
  3. نکته بعدی ارائه توضیحی برای آزمون ما با استفاده از روش “it” است.
  4. اکنون از روش Addnumber استفاده کرده و 2 پارامتر 5 و 6 را ارسال می کنیم. این پرونده به پرونده Addnumber در پرونده js منتقل می شود. مقدار بازگشت پس از آن در متغیری به نام مقدار ذخیره می شود.
  5. مرحله آخر انجام مقایسه و یا تست واقعی ما است. از آنجا که انتظار داریم مقدار برگشتی توسط تابع Addnumber ، مساوی 11 باشد ، ما این روش را با استفاده (expect(value).toBe(the expected value تعریف می کنیم.

خروجی

  1. برای اجرای ازمایش ، فرد باید فرمان Jasmine را اجرا کند.
  2. تصویر زیر نشان می دهد که پس از اجرای دستور jasmine ، تستی به نام add-spec.js را مشاهده می کنید و مطابق آن تست را انجام می دهید. در صورت بروز هرگونه خطا در آزمون ، مطابق آن نشان داده می شود.

Node.js Unit Testing Tutorial with Jasmine

 

خلاصه

  • برای آزمایش یک برنامه Node.js ، ابتدا باید فریم ورک Jasmine  نصب شود. این کار با استفاده از مدیر بسته Node انجام می شود.
  • کد آزمایش باید در یک پرونده جداگانه نوشته شود و کلمه “spec” باید به نام پرونده اضافه شود. فقط اگر این کار انجام شود ، Jasmine  قادر خواهد بود تشخیص دهد که یک فایل نیاز به اجرا دارد.
  • برای اجرای تست ، باید دستور Jasmine  را اجرا کنید. با این کار تمام پرونده هایی که عبارت “spec” به آن وصل شده اند را پیدا کرده و فایل را مطابق با آن اجرا می کنند.

لیست تمامی جلسات آموزش Node.js

  1. آموزش Node.js در ۳ روز: آشنایی با Node.js
  2. آموزش دانلود و نصب Node.js -NPM در ویندوز
  3. آموزش Node.js در ۳ روز: ایجاد،انتشار،گسترش و مدیریت در Node.js
  4. آموزش HTTP در Node.js + ایجاد سرور و دریافت داده
  5. آموزش فریم ورک Express در Node.js در ۱۰ دقیقه
  6. آموزش promise در برنامه نویسی Node.js
  7. آموزش تولید promise با کتابخانه BlueBird در Node.js
  8. آموزش Generators در Node.js و مقایسه با توابع Callbacks
  9. آموزش جریان داده یا Streams در Node.js : کار با Filestream و Pipes در Node.js
  10. آموزش تست Node.js با Jasmine
  11. تفاوت Node.Js و AngulrJS
  12. تفاوت Node js و Python
  13. آموزش MongoDB در Node.js
  14. کتاب آموزش Node.js برای مبتدی ها بصورت کاملا گویا