Files
vibe-coding-college-specs/chapters/09-testing-and-debugging/00-lesson-chapter-goals/spec.md

82 lines
8.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# مشخصات درس‌نامه: اهداف فصل نهم (Chapter Goals)
- **شناسه در سیلابس:** `L9.1`
- **فصل:** فصل ۹: تست و Debugging (Ch 9)
- **نوع محتوا:** 📘 درس‌نامه متنی
- **زمان تقریبی مطالعه:** ۵ دقیقه
- **پیش‌نیازهای مستقیم:** `L7.8` (امنیت پایگاه داده با RLS)
---
## ۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)
دانشجو پس از مطالعهٔ این درس‌نامه باید بتواند:
- [ ] **درک کند (Understand):** چرا مهارت تست و دیباگ سیستماتیک، مرز تعیین‌کننده میان یک وایب کدر آماتور که با اولین باگ تسلیم می‌شود با یک معمار حرفه‌ای و خونسرد است.
- [ ] **درک کند (Understand):** نقشه راه ۶ درس‌نامه تخصصی این فصل (از چرایی خطای ایجنت‌ها، انواع تست‌های نرم‌افزاری، چک‌لیست تضمین کیفیت QA، تکنیک‌های پیشرفته دیباگ با هوش مصنوعی تا کالبدشکافی خطاهای متداول) چگونه چیده شده است.
- [ ] **تحلیل/ارزیابی کند (Evaluate):** رویکرد ترکیبی «تست‌های خودکار با ایجنت‌ها (Agentic Testing) به همراه راستی‌آزمایی دستی انسان (Human QA)» را به عنوان استراتژی استاندارد ارزیابی کند.
- [ ] **به‌کار ببندد (Apply):** پروژه محوری دوره (پورتفولیوی پویا با پنل ادمین و سئو) را تحت آزمون‌های جامع تاب‌آوری و اعتبارسنجی کیفیت قرار دهد.
---
## ۲. محدوده و مرزهای محتوا (Scope & Boundaries)
### آنچه باید پوشش داده شود (In-Scope):
1. **ورود به فاز ارتقای کیفیت و پایداری محصول:**
* نوشتن کد آسان است؛ تضمین اینکه کد در سناریوهای واقعی زیر بار کاربران خرد نشود، هنر واقعی مهندسی است.
2. **مرور سرفصل‌های فصل ۹:**
* درس ۹.۲: چرا ایجنت‌های هوش مصنوعی اشتباه می‌کنند؟ (کالبدشکافی توهم، حافظه فرسوده و فراموشی ناخواسته فایل‌های مرتبط).
* درس ۹.۳: انواع تست نرم‌افزاری (Unit، Integration و E2E) و تولید خودکار تست‌ها توسط ایجنت با ابزارهایی نظیر Vitest و Playwright.
* درس ۹.۴: تست دستی و چک‌لیست طلایی تضمین کیفیت (QA Checklist) برای ارزیابی فرم‌ها، موبایل و وضعیت‌های استثنایی.
* درس ۹.۵: تکنیک‌های پیشرفته دیباگ با AI (شکار ریشه خطا با ایزوله‌سازی، استفاده از لاگ‌های سرور و کامپوزر Cursor).
* درس ۹.۶: کالبدشکافی و حل خطاهای متداول (خطاهای Next.js، خطاهای اتصال دیتابیس و خطاهای دور باطل ایجنت).
3. **پروژه محوری (پورتفولیوی پویا):**
* آزمایش تمام فیچرها: ویترین، دیتابیس Supabase، لاگین ادمین، فرم‌های سئو و واکنش‌گرایی بدون کوچک‌ترین باگ پنهان.
4. **دستورات چندسکویی:**
* ارائه دستورات اجرای تست‌ها در قالب منوهای کشویی اختصاصی برای Windows، macOS و Linux.
5. **کال‌اوت نکته کوئرا (`<details class="green">`):** تغییر نگرش نسبت به باگ‌ها؛ باگ‌ها دشمن نیستند، بلکه نشانه‌هایی شفاف برای هدایت دقیق‌تر ایجنت هستند.
### آنچه نباید وارد آن شویم (Out-of-Scope):
- مباحث تست نفوذ امنیتی پیشرفته و هک اخلاقی (فصل ۱۱).
- تست‌های بار سرور و مانیتورینگ آنلاین لاگ‌ها در محیط ابری (فصل ۱۳).
---
## ۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)
| اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یک‌خطی ساده |
| :--- | :--- | :--- |
| Quality Assurance (QA) | تضمین کیفیت نرم‌افزار | فرآیند سیستماتیک اطمینان از عملکرد صحیح، بدون نقص و پایدار محصول پیش از انتشار |
| Systematic Debugging | دیباگ سیستماتیک | روش گام‌به‌گام و علمی برای کشف ریشه اصلی خطا به جای حدس‌های تصادفی |
| Agentic Testing | تست‌نویسی مبتنی بر ایجنت | استفاده از هوش مصنوعی برای تولید، اجرا و تحلیل نتایج تست‌های خودکار نرم‌افزار |
| Regression Bug | باگ پس‌رفتی | خطایی که بر اثر ایجاد یک تغییر جدید، باعث خراب شدن بخش‌های قبلاً سالم برنامه می‌شود |
---
## ۴. جایگاه‌های تصاویر و نمودارها (Visual & Diagram Placeholders)
> **راهنمای ایجنت نویسنده:** تمام تصاویر باید در پوشهٔ `images/` قرار گرفته و در قالب جدول تک‌خانه‌ای وسط‌چین با کپشن تفصیلی درج شوند:
1. **تصویر کاور درس:** `images/cover.png`
* **موضوع:** کاور مدرن با تم تیره که یک رادار دیجیتال اسکن‌کننده نئونی را در حال ردیابی و نشانه‌گذاری حشرات و باگ‌های نرم‌افزاری در کدهای پروژه نشان می‌دهد.
2. **نقشه راه فصل ۹:** `images/chapter-9-roadmap.png`
* **موضوع:** اینفوگرافیک گام‌به‌گام از چرایی اشتباه ایجنت $\rightarrow$ انواع تست‌ها $\rightarrow$ چک‌لیست QA $\rightarrow$ تکنیک‌های دیباگ $\rightarrow$ حل خطاهای متداول $\rightarrow$ محصول ضدضربه.
3. **چرخه آزمون دوگانه (هوش مصنوعی + ناظر انسان):** `images/dual-testing-loop.png`
* **موضوع:** دیاگرام تعاملی: ایجنت تست‌های خودکار را اجرا می‌کند $\rightarrow$ انسان چک‌لیست سناریوهای کاربری را در مرورگر راستی‌آزمایی می‌نماید.
---
## ۵. بخش‌بندی و ساختار محتوایی پیشنهادی درس‌نامه (`README.md`)
1. **تیتر اصلی:** `# اهداف فصل نهم: تست و Debugging؛ تبدیل نرم‌افزار به محصولی ضدضربه`
2. **مقدمه کوتاه:** چرا آرامش یک توسعه‌دهنده در مواجهه با خطاهای قرمز، بزرگ‌ترین سلاح اوست؟
3. **جدول کاور درس**
4. **سرفصل‌های کلیدی فصل در یک نگاه:** مرور ۶ ایستگاه سنجش کیفیت و دیباگ.
5. **جدول نقشه راه یادگیری فصل**
6. **رویکرد دوگانه دوره: تست‌های خودکار ایجنت در کنار نگاه تیزبین انسان:** تقسیم وظایف در دنیای وایب کدینگ.
7. **پورتفولیوی پویا در اتاق آزمایش:** آماده‌سازی پروژه برای عبور از سخت‌ترین سناریوهای شکست.
8. **کال‌اوت آرامش‌بخش Quera (`<details class="green">`):** ثبت دکمه «خواندم» و آغاز فرایند شکار باگ‌ها.
---
## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- [ ] اهداف کلان فصل ۹ و اهمیت دیباگ سیستماتیک با زبان رسا و حرفه‌ای تبیین شده باشد.
- [ ] سرفصل‌های ۶ درس‌نامه بعدی با ترتیب منطقی معرفی گردند.
- [ ] استراتژی ترکیبی تست خودکار با ایجنت و چک‌لیست دستی انسان صریحاً تشریح شود.