CodeShot

مسیر یادگیری Testcontainers

کتابخانه‌ای که در زمان اجرای تست، وابستگی‌های واقعی (دیتابیس، Redis، RabbitMQ) را داخل کانتینر Docker موقت بالا می‌آورد و بعد از تست خودکار حذف می‌کند.

6 مرحله

  1. 1.

    Testcontainers چیست؟

    کتابخانه‌ای که در زمان اجرای تست، وابستگی‌های واقعی (دیتابیس، Redis، RabbitMQ) را داخل کانتینر Docker موقت بالا می‌آورد و بعد از تست خودکار حذف می‌کند.

    ~10 ساعت
  2. 2.

    آشنایی با ایده تست روی وابستگی‌های واقعی

    کتابخانه‌ای که کانتینرهای Docker موقت برای وابستگی‌های واقعی مثل دیتابیس یا کش، در طول اجرای تست بالا می‌آورد و در پایان حذف می‌کند.

    ~2 ساعت
  3. 3.

    تست با کانتینر واقعی پایگاه‌داده

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

    ~4 ساعت
  4. 4.

    تست سرویس‌های وابسته به Redis

    اجرای یک نمونه واقعی Redis درون کانتینر برای تست منطق Cache-aside یا Session بدون شبیه‌سازی رفتار Redis.

    ~3 ساعت
  5. 5.

    بهینه‌سازی راه‌اندازی و توقف کانتینرها

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

    ~3 ساعت
  6. 6.

    یکپارچه‌سازی Testcontainers با پایپلاین CI

    پیکربندی Docker-in-Docker یا دسترسی به Docker Daemon روی Runnerهای CI تا کانتینرهای تست مثل محیط لوکال بالا بیایند.

    ~3 ساعت