به Learn Testing خوش آمدید!

این دوره مقدمه و کاوش تست برای وب است.

در این دوره آموزشی با موارد زیر آشنا می شوید:

  • تست اصولی
  • تست خودکار در مقابل تست دستی
  • کجا و چگونه تست های خود را اجرا کنید
  • بهترین شیوه ها
  • فلسفه آزمایش، از جمله اینکه چه چیزی را آزمایش کنیم، چه کسی مسئول است، و چگونه آزمایش را وسیله ای برای رسیدن به هدف در نظر بگیریم، نه به عنوان یک هدف.

این دوره همچنین شامل کدهای مختصر و کاربردی برای یادگیری است.

دامنه این دوره شامل جاوا اسکریپت و مدل سند در frontend و همچنین تست کتابخانه در backend است که در محیطی مانند Node.js اجرا می شود. هیچ پیش زمینه ای در آزمایش فرض نمی کند، اما شما به یک پایه در جاوا اسکریپت و تجربه با Node.js یا موارد مشابه نیاز دارید. هم برای توسعه دهندگان مبتدی و هم برای توسعه دهندگان با تجربه مناسب است.

از آنجایی که اکثر چارچوب‌ها و ابزارهای تست زبان مشترکی دارند، Learn Testing رویکردی کلی برای تست کردن دارد. در مواردی که مشخص کردن آن مهم است، از Vitest استفاده می‌کنیم، یک چارچوب آزمایشی که محبوبیت آن در حال افزایش است، و نشان می‌دهیم که چگونه اجزای وب را که با استفاده از React یا Lit نوشته شده است، آزمایش کنیم. برای کسب اطلاعات بیشتر در مورد این انتخاب، به پیوست مراجعه کنید.

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

در اینجا چیزی است که یاد خواهید گرفت:

با آزمایش شروع کنید

تست چیه

این یک مقدمه سطح بالا برای تست است، از جمله نمونه های عملی تست در جاوا اسکریپت. همچنین شامل مقدمه ای برای مقیاس هر آزمون است.

جایی که تست ها اجرا می شوند

تست‌ها می‌توانند به شما کمک کنند که سازنده باشید و نرم‌افزار را به‌طور کارآمد بنویسید، و در حالی که امکان اجرای دستی آن‌ها با استفاده از خط فرمان وجود دارد، می‌توانید آن‌ها را نیز به عنوان بخشی از یک فرآیند خودکار یا ساخت سیستم اجرا کنید.

محیط تست

ابزارهای زمان اجرا مانند Node برای کدهای همه منظوره هستند و کد آزمایشی برای مرورگر را می توان در یک محیط شبیه سازی شده یا با استفاده از چارچوبی که برای آزمایش مرورگر طراحی شده است اجرا کرد.

انواع تست خودکار

در مورد دسته بندی های رایج انواع آزمون که بیشتر با مقیاس آنها مطابقت دارد آشنا شوید. نکته مهم این است که انواع تست تعریف دقیقی ندارند و بر اساس نیاز شما تغییر خواهند کرد.

چه چیزی را تست کنید و رویکرد شما

شناسایی مهم‌ترین بخش‌های پایگاه کد شما برای اعمال آزمایش‌های دقیق می‌تواند تصمیم سختی باشد. این ماژول ایده آزمایش را به عنوان وسیله ای برای رسیدن به هدف و نحوه ارزیابی کد خود برای آزمایش معرفی می کند.

تست کامپوننت در عمل

در این ماژول عملی، یاد خواهید گرفت که چگونه یک کامپوننت نه چندان ایده آل React را آزمایش کنید. این از Vitest از طریق سه مثال متمایز استفاده می کند: رهگیری ترافیک شبکه ساخته شده با fetch() ، تمسخر یک وابستگی خارجی، و استفاده از React's Context برای ارائه یک بیت کد سفارشی فقط برای آزمایش.

تجزیه و تحلیل استاتیک

استفاده از ابزارهایی مانند TypeScript و ESLint، در حالی که رویکردهای به خوبی تثبیت نشده برای آزمایش نیست، می تواند نوعی بررسی خودکار را ارائه دهد. این ماژول این ابزارهای جایگزین را مورد بحث قرار می دهد.

ادعاها و دیگر اصول اولیه

ابزارهای تجارت

در مورد اصول اولیه رایج در اکثر کتابخانه ها یا فریم ورک های آزمایشی، از جمله test() و assert ، که پایه های اصلی هر آزمونی هستند که در جاوا اسکریپت می نویسید، بیاموزید.

به زودی

  • از تله های آزمایشی رایج اجتناب کنید
  • تست دو برابر
  • کتابخانه ها و ابزارهای کاربردی را آزمایش کنید
  • در مورد چارچوب آزمایشی تصمیم بگیرید

باقی‌مانده این بخش شامل صفحات بیشتری در مورد چارچوب‌ها و کتابخانه‌های آزمایشی، نحوه استفاده از آنها و نحوه تصمیم‌گیری در مورد کدام یک و چه ابزارهای دیگری است.

به زودی: تست مشکل محور

شما الگوهایی را برای نزدیک شدن به تعدادی از چالش های رایج تست وب یاد خواهید گرفت.

به زودی: تست خودکار در عمل

این یک بخش عملی است که نشان می دهد چگونه یک سایت تجارت الکترونیک ساخته شده با Next.js را آزمایش کنید، از جمله کدهایی که می توانید بررسی کنید و خودتان یاد بگیرید. شما یاد خواهید گرفت که چگونه اجزای آن را آزمایش کنید، چگونه با خدمات خارجی آن، از جمله پرداخت، برای آزمایش کار کنید، و چگونه برای سایتی که صفحه ورود اختیاری دارد، تست های سرتاسر بسازید.

به زودی: فلسفه تست زدن

تست کردن می‌تواند یک چالش مهندسی باشد، اما دانستن اینکه چه چیزی را باید آزمایش کنید، چه کسی مسئول است و بهترین روش‌ها نیز می‌تواند چالشی برای یک تیم توسعه باشد.

به زودی: نوشتن کد قابل آزمایش

این دوره راهنمایی در مورد تست کد موجود در آن ارائه می دهد، اما تیم شما می تواند الگوهای مختلفی را برای آسان تر کردن تست کد شما اتخاذ کند. این بخش برخی از رویکردها را پوشش خواهد داد.