لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش تست روبی با RSpec: راهنمای کامل
Testing Ruby with RSpec: The Complete Guide
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
با استفاده از RSpec Gem بر هنر توسعه مبتنی بر آزمایش (TDD) در روبی مسلط شوید. بدون نیاز به تجربه آزمایش قبلی! تسلط بر نحو و ساختار RSpec، محبوبترین روبی Gem برای آزمایش استفاده از اصول توسعه مبتنی بر آزمایش برای طراحی و پیادهسازی مشخصات تست تمیز در Ruby. مجموعه وسیعی از تطبیقکنندگان RSpec موجود برای آزمایش کد خود را کاوش کنید. با تمسخر، وابستگیها را در مجموعه آزمایشی خود کاهش دهید. اشیاء با کلاس و نمونه دو برابر پیش نیازها: دانش متوسط از زبان برنامه نویسی Ruby (کلاس ها، اشیاء، بلوک ها و غیره) نسخه مدرن Ruby (> 3.0) ویرایشگر متن (VSCode توصیه می شود)
به تست روبی با RSpec خوش آمدید: راهنمای کامل!
این دوره یک نمای کلی از کتابخانه تست RSpec برای زبان برنامه نویسی Ruby ارائه می دهد. RSpec با بیش از 300 میلیون بارگیری تا به امروز، محبوب ترین جواهر روبی در تمام دوران است.
اگر در این موضوع تازه کار هستید، آزمایش به معنای "نوشتن کدی است که تایید می کند کدهای دیگر همانطور که انتظار می رود کار می کنند". کنترل رگرسیون ها را آزمایش می کند، که تغییراتی در کد هستند که برنامه را خراب می کنند. آزمایشها به شما اطمینان میدهند که کد موجود را اصلاح کنید، زیرا میدانید که هدف اصلی کد را رعایت خواهید کرد.
مزایای آزمایش خارج از پایگاه کد شما است. در این دوره، توسعه تست محور (TDD) را پوشش خواهیم داد، روشی که در آن ابتدا تست های خود را قبل از اجرا می نویسیم. توسعه آزمایش محور اغلب منجر به کدهای ساده تر و جداشده تر می شود. بنابراین، آزمایش می تواند شما را به یک توسعه دهنده بهتر تبدیل کند. تستها شما را مجبور میکنند درباره برنامه و ویژگیهای آن به طور انتقادی فکر کنید: کلاسها، اشیاء، روشها و موارد دیگر.
آزمایش Ruby با RSpec با موارد ضروری RSpec شروع می شود و به موضوعات پیچیده تری از جمله:
نصب
راه اندازی اولیه پروژه
توسعه مبتنی بر آزمایش (TDD)
اجازه دادن به متغیرها
قبل و بعد از Hooks
موضوعات
نمونه های مشترک
زمینه مشترک
مطابقات داخلی
ملک و دوبل
نمونه دو برابر می شود
کلاس دو نفره
بهعنوان یک مهندس نرمافزار و مشاور که بیش از 5 سال با Ruby کار کردهام، بسیار هیجانزده هستم که شما را با کتابخانه عالی RSpec، نحو زیبا و تمام ویژگیهای جالب آن آشنا کنم.
از اینکه دوره را بررسی کردید متشکریم!
سرفصل ها و درس ها
معرفی
Introduction
Ruby را در رایانه های ویندوزی راه اندازی کنید
Setup Ruby on Windows Computers
RSpec را نصب کنید
Install RSpec
کد ویژوال استودیو را برای macOS نصب کنید
Install Visual Studio Code for macOS
روشهای توصیف، آن و انتظار
The describe, it and expect Methods
شکست خواندن
Reading Failures
ساخت Specs Pass
Making the Specs Pass
آزمون: روشهای TDD و RSpec
QUIZ: TDD and RSpec Methods
مشکلات با جهش
Problems With Mutation
کاهش تکرار: روش let
Reducing Duplication: The let Method
قبل و بعد از هوکز
before and after Hooks
منطق تودرتو: قلاب
Nested Logic: Hooks
منطق تودرتو: رونویسی Let Variables
Nested Logic: Overwriting Let Variables
معرفی
Introduction
به RSpec خوش آمدید
Welcome to RSpec
به RSpec خوش آمدید
Welcome to RSpec
درمورد من
About Me
درمورد من
About Me
تست های واحد در مقابل تست های پایان به انتها (E2E).
Unit Tests vs End-to-End (E2E) Tests
تست های واحد در مقابل تست های پایان به انتها (E2E).
Unit Tests vs End-to-End (E2E) Tests
Ruby را در رایانههای macOS راهاندازی کنید
Setup Ruby on macOS Computers
Ruby را در رایانههای macOS راهاندازی کنید
Setup Ruby on macOS Computers
Ruby را در رایانه های ویندوزی راه اندازی کنید
Setup Ruby on Windows Computers
RSpec را نصب کنید
Install RSpec
کد ویژوال استودیو را برای macOS نصب کنید
Install Visual Studio Code for macOS
یک پروژه را با rspec --init شروع کنید
Start a Project with rspec --init
یک پروژه را با rspec --init شروع کنید
Start a Project with rspec --init
دانلود فایل های دوره (اختیاری)
Download Course Files (Optional)
دانلود فایل های دوره (اختیاری)
Download Course Files (Optional)
توسعه تست محور
Test-Driven Development
توسعه تست محور
Test-Driven Development
روش توصیف
The describe Method
روش توصیف
The describe Method
روش آن
The it Method
روش آن
The it Method
روش انتظار و معادله
The expect and eq Methods
روش انتظار و معادله
The expect and eq Methods
روشهای توصیف، آن و انتظار
The describe, it and expect Methods
شکست خواندن
Reading Failures
ساخت Specs Pass
Making the Specs Pass
آزمون: روشهای TDD و RSpec
QUIZ: TDD and RSpec Methods
چند مثال در گروه نمونه
Multiple Examples in Example Group
چند مثال در گروه نمونه
Multiple Examples in Example Group
رفع مجدد مشخصات خرابی
Fixing Failing Specs Again
رفع مجدد مشخصات خرابی
Fixing Failing Specs Again
ساخت Specs Pass
Making Specs Pass
ساخت Specs Pass
Making Specs Pass
کاهش تکرار - قبل از قلاب ها و متغیرهای نمونه
Reducing Duplication - Before Hooks and Instance Variables
کاهش تکرار - قبل از قلاب ها و متغیرهای نمونه
Reducing Duplication - Before Hooks and Instance Variables
کاهش تکرار: روش های کمکی
Reducing Duplication: Helper Methods
کاهش تکرار: روش های کمکی
Reducing Duplication: Helper Methods
مشکلات با جهش
Problems With Mutation
کاهش تکرار: روش let
Reducing Duplication: The let Method
پیام های خطای سفارشی
Custom Error Messages
پیام های خطای سفارشی
Custom Error Messages
حذف تکراری
Removing Duplication
حذف تکراری
Removing Duplication
روش زمینه و تودرتو توصیف می کند
The context Method and Nested Describes
روش زمینه و تودرتو توصیف می کند
The context Method and Nested Describes
قبل و بعد از هوکز
before and after Hooks
منطق تودرتو: قلاب
Nested Logic: Hooks
قلاب های زمینه تکی
Single Context Hooks
قلاب های زمینه تکی
Single Context Hooks
قلاب های چند متنی
Multi-Context Hooks
قلاب های چند متنی
Multi-Context Hooks
منطق تودرتو: رونویسی Let Variables
Nested Logic: Overwriting Let Variables
موضوعات، مثالهای مشترک، و زمینه مشترک
Subjects, Shared Examples, and Shared Context
موضوع ضمنی
Implicit Subject
موضوع صریح
Explicit Subject
موضوع صریح
Explicit Subject
موضوعات، مثالهای مشترک، و زمینه مشترک
Subjects, Shared Examples, and Shared Context
موضوعات، مثالهای مشترک، و زمینه مشترک
Subjects, Shared Examples, and Shared Context
موضوع ضمنی
Implicit Subject
موضوع ضمنی
Implicit Subject
موضوع ضمنی
Implicit Subject
موضوع صریح
Explicit Subject
موضوع صریح
Explicit Subject
توصیف_کلاس
described_class
توصیف_کلاس
described_class
One-Liner-Example-Syntax
One-Liner-Example-Syntax
One-Liner-Example-Syntax
One-Liner-Example-Syntax
نمونه های به اشتراک گذاشته شده با include_examples
Shared Examples with include_examples
نمونه های به اشتراک گذاشته شده با include_examples
Shared Examples with include_examples
زمینه مشترک با include_context
Shared Context with include_context
زمینه مشترک با include_context
Shared Context with include_context
موضوعات، مثالهای مشترک، و زمینه مشترک
Subjects, Shared Examples, and Shared Context
تطبیق های داخلی
Built-In Matchers
روش not_to
The not_to Method
تطابق برابری I (eq و eql)
Equality Matchers I (eq and eql)
تطابق برابری I (eq و eql)
Equality Matchers I (eq and eql)
Equality Matchers II (برابر و باشد)
Equality Matchers II (equal and be)
مقایسه کننده ها
Comparison Matchers
مقایسه کننده ها
Comparison Matchers
تطبیق های برابری و مقایسه
Equality and Comparison Matchers
تطبیق های محمول
Predicate Matchers
تطبیق های محمول
Predicate Matchers
همه مطابقت
all Matcher
مطابقت داشته باشید (ارزشهای حقیقت، نادرست و صفر)
be Matcher (Truthy, Falsy and Nil Values)
محمول، همه و همسان باشند
Predicate, all and be Matchers
محمول، همه و همسان باشند
Predicate, all and be Matchers
تطبیق را تغییر دهید
change Matcher
contain_exactly Matcher
contain_exactly Matcher
contain_exactly Matcher
contain_exactly Matcher
start_with و end_with matchers
start_with and end_with Matchers
have_attributes مطابقت دارد
have_attributes Matcher
have_attributes مطابقت دارد
have_attributes Matcher
شامل Matcher
include Matcher
تطبیق raise_error
raise_error Matcher
تطبیق raise_error
raise_error Matcher
answer_to Matcher
respond_to Matcher
answer_to Matcher
respond_to Matcher
راضی کردن Matcher
satisfy Matcher
روش not_to
not_to Method
انتظارات مرکب
Compound Expectations
انتظارات مرکب
Compound Expectations
انتظارات مرکب
Compound Expectations
انتظارات مرکب
Compound Expectations
تطبیق های داخلی
Built-In Matchers
روش not_to
The not_to Method
Equality Matchers II (برابر و باشد)
Equality Matchers II (equal and be)
تطبیق های برابری و مقایسه
Equality and Comparison Matchers
همه مطابقت
all Matcher
مطابقت داشته باشید (ارزشهای حقیقت، نادرست و صفر)
be Matcher (Truthy, Falsy and Nil Values)
تطبیق را تغییر دهید
change Matcher
start_with و end_with matchers
start_with and end_with Matchers
شامل Matcher
include Matcher
راضی کردن Matcher
satisfy Matcher
روش not_to
not_to Method
انتظارات مرکب
Compound Expectations
انتظارات مرکب
Compound Expectations
مسخره می کند
Mocks
یک تست دوبل ایجاد کنید
Create a Test Double
دوبل
Doubles
فیلم تست ما را تنظیم کنید
Set up Our Test Movie
فیلم تست ما را تنظیم کنید
Set up Our Test Movie
جایگزین کردن یک شی با یک دو
Replacing an Object with a Double
دریافت تعداد
Receive Counts
روش مجاز
The allow Method
تطبیق استدلال
Matching Arguments
نمونه دو برابر می شود
Instance Doubles
کلاس دو نفره
Class Doubles
کلاس دو نفره
Class Doubles
جاسوس I
Spies I
جاسوس دوم
Spies II
مسخره می کند
Mocks
یک تست دوبل ایجاد کنید
Create a Test Double
دوبل
Doubles
جایگزین کردن یک شی با یک دو
Replacing an Object with a Double
یودمی یکی از بزرگترین پلتفرمهای آموزشی آنلاین است که به میلیونها کاربر در سراسر جهان امکان دسترسی به دورههای متنوع و کاربردی را فراهم میکند. این پلتفرم امکان آموزش در زمینههای مختلف از فناوری اطلاعات و برنامهنویسی گرفته تا زبانهای خارجی، مدیریت، و هنر را به کاربران ارائه میدهد. با استفاده از یودمی، کاربران میتوانند به صورت انعطافپذیر و بهینه، مهارتهای جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.
یکی از ویژگیهای برجسته یودمی، کیفیت بالای دورهها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد میدهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و میتوانند به بهترین شکل ممکن از آموزشها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرمهای آموزشی آنلاین، به افراد امکان میدهد تا به راحتی و با کیفیت، مهارتهای مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.
مهندس نرم افزار | مشاور | نویسنده سلام من یک مهندس ، نویسنده و مشاور نرم افزار ساکن شهر نیویورک هستم که از سال 2016 در Udemy تدریس می کنم.
من مانند بسیاری از همتایانم رویکرد متعارفی را برای نقش فعلی خود به عنوان یک توسعه دهنده وب دنبال نکردم. پس از فارغ التحصیلی از دانشگاه نیویورک در سال 2013 در رشته اقتصاد بازاریابی و بازاریابی ، من به عنوان تحلیلگر بازرگانی ، مدیر سیستم ها و تحلیلگر داده در شرکت های مختلف از جمله آژانس بازاریابی دیجیتال ، یک شرکت خدمات مالی و یک فناوری بین المللی کار کردم. نیروگاه در یکی از آن نقش ها ، من آنقدر خوش شانس بودم که برای ساخت چندین پروژه با پایتون و جاوا اسکریپت به چالش کشیده شدم.
هیچ آموزش رسمی علوم کامپیوتر برای من وجود نداشت. من کاملاً تصادفی کدگذاری را کشف کردم. یک علاقه کاری کوچک به سرعت به یک سرگرمی پرشور آخر هفته تبدیل شد. سرانجام ، من نقش سابق خود را برای اتمام برنامه آکادمی ، یک بوتکمپ سخت افزاری توسعه وب در NYC ، ترک کردم. بقیه تاریخ است.
من همیشه مجذوب تقاطع فناوری و آموزش بوده ام ، خصوصاً اینکه با بسیاری از منابع سنتی که مردم برای یادگیری نحوه برنامه نویسی از آنها استفاده می کنند دست و پنجه نرم می کردم. که جزئیات پیچیده را به قطعات کوچک و قابل هضم تقسیم می کند. من دوست دارم بسازم.
نمایش نظرات