روال‌های مطلوب برای توزیع برنامه‌های Apple برای آزمایش‌گران تضمین کیفیت بااستفاده از CI/CD و fastlane

این سند روال‌های مطلوب استفاده از Firebase App Distribution و fastlane را برای پایدار و تکرارپذیر کردن گردش‌های کاری آزمایش پیش‌انتشار پلاتفرم Apple در محیط CI/CD معرفی می‌کند. اگرچه این سند بر fastlane تمرکز دارد، اما راه‌حل‌های دردسترس ازطریق Firebase کنسول، Firebase CLI، و Firebase App Distribution API عمومی را نیز شرح می‌دهیم تا انعطاف‌پذیری بیشتری به شما ارائه دهیم. همچنین محدودیت‌های انتشار و آزمایش‌کننده را شرح می‌دهیم تا بتوانید ازقبل برای تجربه بهینه برنامه‌ریزی کنید.

اگر از Android هم استفاده می‌کنید، روال‌های مطلوب برای توزیع برنامه‌های Android به آزمایشگران کنترل کیفیت بااستفاده از CI/CD را ببینید.

قبل از شروع

قبل‌از اینکه روال‌های مطلوب را در این سند پیاده‌سازی کنید، حتماً App Distribution را در کنسول Firebase برای هر برنامه فعال کنید. اگر App Distribution را فعال نکرده باشید، خطای ۴۰۴ دریافت خواهید کرد.

برای فعال کردن App Distribution، این مراحل را دنبال کنید:

  1. صفحه App Distribution را در کنسول Firebase باز کنید.

  2. برنامه iOS خود را انتخاب کنید.

  3. روی شروع به کار کلیک کنید.

خودکارسازی گردش کار آزمایش پیش‌انتشار بااستفاده از CI/CD

اگر می‌خواهید ساخت و انتشار برنامه‌ها برای آزمایش‌کنندگان را خودکارسازی کنید و از CI/CD استفاده می‌کنید، توصیه می‌کنیم از fastlane استفاده کنید. گزینه دیگر استفاده از Firebase CLI است که به شما امکان می‌دهد به طیف گسترده‌ای از محصولات Firebase دسترسی داشته باشید.

استفاده از fastlane

بااستفاده از fastlane، ابزار متن‌باز که ساخت و انتشار برنامه‌های iOS و Android را خودکارسازی می‌کند، App Distribution را در خط لوله CI/CD خود ادغام کنید. با ساختن و توزیع خودکار جدیدترین نسخه‌های پخش خود برای آزمایش‌گران، مطمئن می‌شوید که آزمایش‌گران همیشه به‌روزترین نسخه آزمایشی برنامه شما را دراختیار دارند.

برای آشنایی با نحوه یکپارچه‌سازی App Distribution با fastlane، به توزیع برنامه‌های iOS برای آزمایش‌گران بااستفاده از fastlane مراجعه کنید. همچنین codelab را ببینید که شما را در فرایند یکپارچه‌سازی fastlane راهنمایی می‌کند.

استفاده از Firebase CLI

از ابزارهای Firebase CLI که App Distribution ارائه می‌دهد برای توزیع ساخت‌ها به آزمونگران به‌صورت برنامه‌نویسی استفاده کنید. می‌توانید آزمونگران و یادداشت‌های انتشار را برای ساختمانی مشخص کنید.

با مشخص کردن «شناسه برنامه Firebase» برنامه، جدیدترین ساخت iOS خود را test.ipa توزیع کنید، درصورت تمایل یادداشت انتشار و فایلی حاوی ایمیل‌های آزمایش‌کنندگان را اضافه کنید:

firebase appdistribution:distribute test.ipa  \
    --app 1:1234567890:ios:0a1b2c3d4e5f67890  \
    --release-notes "Bug fixes and improvements" --testers-file testers.txt

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

استفاده از اعتبارنامه‌های سرویس برای اصالت‌سنجی

از App Distribution افزایه fastlane یا Firebase CLI با حساب‌های سرویس استفاده کنید که از اطلاعات اعتباری پیش‌فرض برنامه بهره می‌برند و به شما کمک می‌کنند CI خود را مدیریت کنید. حساب خدمات نوعی «حساب Google» است که برنامه‌ها را به‌جای کاربران نشان می‌دهد. سیستم CI شما می‌تواند از حساب‌های سرویس برای اجرای App Distribution بار کاری استفاده کند. برای کسب اطلاعات بیشتر، به احراز هویت با حساب سرویس مراجعه کنید.

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

محدودیت‌های انتشار را درنظر داشته باشید

‫App Distribution حداکثر از ۱٬۰۰۰ نسخه پخش برای هر برنامه پشتیبانی می‌کند. این یعنی وقتی از حد مجاز نسخه پخش فراتر بروید، App Distribution به‌طور خودکار قدیمی‌ترین نسخه‌های پخش بالاتر از حد مجاز را حذف می‌کند. برای آشنایی با نحوه مدیریت محدودیت‌های انتشار، به انتشارهای برنامه تا چه مدت دردسترس هستند؟ مراجعه کنید.

افزودن مجموعه یکسانی از آزمایش‌گران به چند نسخه پخش

اگر می‌خواهید تعداد زیادی آزمایش‌گر به نسخه‌های پخش خود اضافه کنید، از عملکرد مدیریت آزمایش‌گر انبوه App Distribution استفاده کنید.

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

اگر آزمونگران زیادی برای مدیریت کردن دارید، می‌توانید آزمونگران را به‌صورت انبوه اضافه و حذف کنید بااستفاده از کنسول Firebase. برای خودکارسازی کردن افزودن و برداشتن آزمایش‌گران، از Firebase CLI، fastlane، یا API عمومی Firebase App Distribution استفاده کنید.

محدودیت‌های آزمایش‌گر را به‌خاطر داشته باشید

‫App Distribution تعداد آزمایش‌گرانی را که می‌توانید به پروژه Firebase یا گروه App Distribution اضافه کنید محدود می‌کند. وقتی از این محدودیت‌ها فراتر بروید، نمی‌توانید برنامه‌تان را برای آزمونگران بیشتری توزیع کنید. برای کسب اطلاعات بیشتر درباره محدودیت‌های آزمایش‌کننده، به آیا برای افزودن آزمایش‌کننده به برنامه‌ام محدودیت‌هایی وجود دارد؟ مراجعه کنید.

مدیریت و افزودن خودکار دستگاه‌های آزمایش‌کننده iOS جدید

برای کمک به شما در ثبت دستگاه‌های آزمایش‌کننده iOS بیشتر، App Distribution با اطلاع‌رسانی درباره دستگاه‌های iOS آزمایش‌کننده جدید ازطریق ایمیل یا فایل‌های CSV به شما کمک می‌کند دستگاه‌های آزمایش‌کننده iOS خود را در «درگاه توسعه‌دهندگان Apple» مدیریت کنید. برای کسب اطلاعات بیشتر، به وارد کردن آزمایش‌کنندگان از فایل‌های CSV مراجعه کنید. همچنین می‌توانید به‌صورت برنامه‌ریزی‌شده دستگاه‌های جدید را بااستفاده از fastlane صادر کنید.

برای آشنایی با نحوه راه‌اندازی کنش fastlane که به‌طور خودکار UDIDها را پایین می‌کشد، آن‌ها را به کنسول توسعه‌دهنده Apple اضافه می‌کند، و سپس برنامه را بازسازی و توزیع می‌کند، به توزیع سریع‌تر ساخت‌های پیش‌انتشار iOS با App Distribution و fastlane مراجعه کنید.

فعال کردن امکان ثبت‌نام خودکار برای آزمایش‌گران بالقوه

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

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

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

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

مطمئن شوید که آزمایش‌گران نسخه‌ای را که برایتان مهم است آزمایش می‌کنند

وقتی نسخه جدیدی بارگذاری می‌شود، آزمایش‌گران شما ازطریق ایمیل مطلع می‌شوند. برای تکمیل این اعلان، می‌توانید از ویژگی‌های زیر – پیوندهای انتشار و هشدارهای درون‌برنامه‌ای – استفاده کنید تا مطمئن شوید آزمایش‌کنندگان شما نسخه برنامه موردنظر شما را آزمایش می‌کنند:

  • پیوندهای نسخه پخش: وقتی می‌خواهید نسخه خاصی را با آزمونگران هم‌رسانی کنید از این ویژگی استفاده کنید. برای آشنایی با نحوه استفاده از پیوندهای نسخه پخش، به توزیع برنامه‌های iOS برای آزمونگران بااستفاده از کنسول Firebase مراجعه کنید. این پیوندها همچنین با ابزارهای خط فرمان (CLI) Firebase و fastlane ما برای استفاده با ابزارهای خودکارسازی ساخت دردسترس هستند.

  • هشدارهای درون‌برنامه‌ای: وقتی می‌خواهید مطمئن شوید آزمایش‌کنندگانتان جدیدترین نسخه برنامه شما را آزمایش می‌کنند، از این هشدارها استفاده کنید. با ادغام کردن کیت توسعه نرم‌افزار iOS App Distribution Firebase، می‌توانید وقتی ساخت‌های جدید برنامه‌تان دردسترس قرار می‌گیرد، هشدارها را مستقیماً در برنامه به آزمایش‌کنندگانتان نمایش دهید. برای آشنایی با نحوه افزودن هشدارهای درون‌برنامه‌ای، به اعلام کردن ساخت‌های جدید به آزمایش‌کنندگان مراجعه کنید.

برداشتن خودکار دسترسی آزمونگرانی که شرکت را ترک می‌کنند

پس‌از اینکه جریان آزمایش داخلی CI/CD شما راه‌اندازی شد، باید مطمئن شوید افرادی که شرکت را ترک می‌کنند دیگر به ساخت‌های داخلی شما دسترسی ندارند. برای کمک به شما در مدیریت دسترسی آزمایش‌کنندگان به ساخت‌ها، App Distribution گزینه‌های زیر را ارائه می‌دهد: