แนวทางปฏิบัติแนะนำสำหรับการเผยแพร่แอป Android ให้แก่ผู้ทดสอบ QA โดยใช้ CI/CD

เอกสารนี้จะแนะนำแนวทางปฏิบัติแนะนำสำหรับการใช้ Firebase App Distribution เพื่อ ทำให้เวิร์กโฟลว์การทดสอบรุ่นก่อนเปิดตัวของ Android ทำได้อย่างยั่งยืนและทำซ้ำได้ในสภาพแวดล้อม CI/CD โซลูชันต่างๆ ได้แก่ Gradle และ fastlane แต่เพื่อให้คุณมีความยืดหยุ่นมากยิ่งขึ้น เราจึงมีโซลูชันที่พร้อมใช้งานผ่านFirebaseคอนโซล, FirebaseCLI และ Firebase App DistributionAPI สาธารณะด้วย นอกจากนี้ เรายังอธิบายขีดจำกัดของรุ่นและผู้ทดสอบเพื่อให้คุณวางแผนล่วงหน้าเพื่อประสบการณ์การใช้งานที่ดีที่สุดได้

หากคุณใช้แพลตฟอร์มของ Apple ด้วย โปรดดูแนวทางปฏิบัติแนะนำสำหรับการเผยแพร่แอป Apple ให้ผู้ทดสอบ QA โดยใช้ CI/CD และ fastlane

ก่อนเริ่มต้น

ก่อนที่จะนำแนวทางปฏิบัติแนะนำในเอกสารนี้ไปใช้ โปรดตรวจสอบว่าได้เปิดใช้ App Distribution ในFirebaseคอนโซลสำหรับแต่ละแอปแล้ว หากยังไม่ได้เปิดใช้ App Distribution คุณจะได้รับข้อผิดพลาด 404

หากต้องการเปิดใช้ App Distribution ให้ทำตามขั้นตอนต่อไปนี้

  1. เปิดหน้าApp Distributionในคอนโซล Firebase
  2. เลือกแอป Android
  3. คลิกเริ่มต้นใช้งาน

เนื่องจาก Android App Bundle (AAB) กำลังกลายเป็นรูปแบบแพ็กเกจ Android ที่พบบ่อยที่สุด เราขอแนะนำให้คุณตั้งค่าความสามารถในการเผยแพร่ AAB ให้กับผู้ทดสอบโดยลิงก์กับ Google Play

ทำให้เวิร์กโฟลว์การทดสอบเวอร์ชันทดลองเป็นแบบอัตโนมัติโดยใช้ไปป์ไลน์ CI/CD

หากต้องการสร้างและเผยแพร่แอปให้กับผู้ทดสอบโดยอัตโนมัติและคุณใช้ CI/CD เราขอแนะนำให้ใช้ fastlane หรือ Gradle อีกตัวเลือกหนึ่งคือการใช้ Firebase CLI ซึ่งช่วยให้คุณเข้าถึงผลิตภัณฑ์ Firebase ได้หลากหลาย

ใช้ fastlane

ผสานรวม App Distribution เข้ากับไปป์ไลน์ CI/CD โดยใช้ fastlane ซึ่งเป็นเครื่องมือโอเพนซอร์ส ที่สร้างและเผยแพร่แอป iOS และ Android โดยอัตโนมัติ การสร้าง และแจกจ่ายรุ่นล่าสุดให้ผู้ทดสอบโดยอัตโนมัติจะช่วยให้มั่นใจได้ว่า ผู้ทดสอบจะมีแอปเวอร์ชันทดสอบที่อัปเดตล่าสุดอยู่เสมอ

ดูวิธีผสานรวม App Distribution กับ fastlane ได้ที่แจกจ่ายแอป Android ให้ผู้ทดสอบโดยใช้ fastlane

ใช้ Gradle

ใช้ Gradle เพื่อผสานรวม App Distribution เข้ากับกระบวนการบิลด์ Android โดยใช้ปลั๊กอิน Gradle ของ App Distribution ปลั๊กอินช่วยให้คุณระบุผู้ทดสอบและ หมายเหตุประจำรุ่นในไฟล์ build.gradle ของแอปได้ ซึ่งจะช่วยให้คุณกำหนดค่า การเผยแพร่สำหรับบิลด์ประเภทต่างๆ และตัวแปรของแอปได้

ดูวิธีผสานรวม App Distribution กับ Gradle ได้ที่ แจกจ่ายแอป Android ให้ผู้ทดสอบโดยใช้ Gradle

ใช้ Firebase CLI

ใช้เครื่องมือ Firebase CLI ที่ App Distribution มีให้เพื่อแจกจ่าย บิลด์ให้ผู้ทดสอบโดยอัตโนมัติ คุณระบุผู้ทดสอบและหมายเหตุประจำรุ่น สำหรับบิลด์ได้

แจกจ่ายบิลด์ Android ล่าสุดโดยระบุรหัสแอป Firebase ของแอป และเพิ่มหมายเหตุประจำรุ่นและไฟล์ที่มีอีเมลของผู้ทดสอบ (ไม่บังคับ) ดังนี้

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

ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Firebase CLI เพื่อตั้งค่าบิลด์อัตโนมัติได้ที่เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้ Firebase CLI

ใช้ข้อมูลเข้าสู่ระบบของบริการเพื่อตรวจสอบสิทธิ์

ใช้App Distribution ปลั๊กอิน fastlane ปลั๊กอิน Gradle หรือ Firebase CLI กับบัญชีบริการ บัญชีบริการ คือบัญชี Google ประเภทหนึ่งที่แสดงถึงแอปพลิเคชัน (ไม่ใช่ผู้ใช้) ระบบ CI สามารถใช้บัญชีบริการเพื่อเรียกใช้App Distributionภาระงาน ดูข้อมูลเพิ่มเติมได้ที่ตรวจสอบสิทธิ์ด้วยบัญชีบริการ

หากใช้การเชื่อมโยงข้อมูลประจำตัวของเวิร์กโหลด คุณจะสร้างและใช้ไฟล์การกำหนดค่าข้อมูลเข้าสู่ระบบแทนคีย์บัญชีบริการได้

โปรดทราบว่ามีขีดจำกัดในการเผยแพร่

App Distribution รองรับการเผยแพร่สูงสุด 1,000 รายการต่อแอป ซึ่งหมายความว่า เมื่อคุณเผยแพร่เกินขีดจำกัด App Distribution จะลบ การเผยแพร่ที่เก่าที่สุดซึ่งเกินขีดจำกัดโดยอัตโนมัติ ดูวิธีจัดการขีดจำกัดการเผยแพร่ได้ที่ การเผยแพร่แอปจะพร้อมใช้งานนานเท่าใด

เพิ่มผู้ทดสอบชุดเดียวกันลงในการเผยแพร่หลายรายการ

หากต้องการเพิ่มผู้ทดสอบจำนวนมากในการเผยแพร่ ให้ใช้ฟังก์ชันการจัดการผู้ทดสอบแบบกลุ่มของ App Distribution

เราขอแนะนำให้คุณใช้กลุ่มเพื่อเพิ่มผู้ทดสอบคนเดียวกันลงในรุ่นต่างๆ กลุ่มทำหน้าที่เป็นรายการควบคุมการเข้าถึง เมื่อคุณนำผู้ทดสอบออกจากกลุ่ม ผู้ทดสอบจะเสียสิทธิ์เข้าถึงรุ่นทั้งหมดที่เผยแพร่ไปยังกลุ่มนั้น ดูข้อมูลเพิ่มเติมได้ที่หัวข้อเพิ่มและนำผู้ทดสอบออกจากกลุ่ม

หากมีผู้ทดสอบจำนวนมากที่ต้องจัดการ คุณสามารถเพิ่มและลบผู้ทดสอบเป็นกลุ่ม ได้โดยใช้คอนโซล Firebase หากต้องการเพิ่มและนำผู้ทดสอบออกโดยอัตโนมัติ ให้ใช้ Firebase CLI, fastlane, Gradle หรือ Firebase App Distribution API สาธารณะ

โปรดทราบขีดจำกัดของผู้ทดสอบ

App Distribution จำกัดจำนวนผู้ทดสอบที่คุณเพิ่มลงในโปรเจ็กต์ Firebase หรือกลุ่ม App Distribution ได้ เมื่อเกินขีดจำกัดเหล่านี้ คุณจะไม่สามารถ เผยแพร่แอปไปยังผู้ทดสอบเพิ่มเติมได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับขีดจำกัดของผู้ทดสอบได้ที่มีการจำกัดจำนวนผู้ทดสอบที่เพิ่มลงในแอปของฉันไหม

เปิดให้ผู้ทดสอบที่มีศักยภาพลงทะเบียนเพื่อทดสอบด้วยตนเอง

เราขอแนะนำให้คุณใช้ลิงก์คำเชิญเพื่อให้เผยแพร่แอปไปยังผู้ทดสอบได้ง่ายขึ้น ลิงก์คำเชิญคือ URL ที่ไม่ซ้ำกันซึ่งช่วยให้ผู้ทดสอบป้อนอีเมลเพื่อลงชื่อสมัครใช้ทดสอบแอปได้ การอนุญาตให้ผู้ใช้เพิ่มตัวเองลงในรายชื่อผู้ทดสอบแอปเป็นวิธีที่ราบรื่นในการเพิ่มฐานผู้ทดสอบภายใน

กรณีการใช้งานลิงก์คำเชิญ ได้แก่ โปรแกรมทดสอบภายในของบริษัท องค์กรที่มี ทีม QA ขนาดใหญ่ และกลุ่มนักพัฒนาแอปที่ต้องการให้ไคลเอ็นต์แต่ละรายควบคุมสิทธิ์เข้าถึงของผู้ทดสอบได้

เราขอแนะนำให้คุณสร้างลิงก์เชิญสำหรับกลุ่ม ระบบจะเพิ่มผู้ทดสอบที่ลงชื่อสมัครใช้โดยใช้ลิงก์คำเชิญลงในรุ่นต่อๆ ไปโดยอัตโนมัติ

ดูข้อมูลเพิ่มเติมได้ที่สร้างลิงก์คำเชิญ และเพิ่มและนำผู้ทดสอบออกจากกลุ่ม

ตรวจสอบว่าผู้ทดสอบกำลังทดสอบเวอร์ชันที่คุณสนใจ

เมื่อมีการอัปโหลดเวอร์ชันใหม่ ผู้ทดสอบจะได้รับการแจ้งเตือนทางอีเมล คุณสามารถใช้ฟีเจอร์ต่อไปนี้เพื่อเสริมการแจ้งเตือนนี้ ได้แก่ ลิงก์รุ่นและ การแจ้งเตือนในแอป เพื่อให้มั่นใจว่าผู้ทดสอบกำลังทดสอบแอปเวอร์ชันที่คุณต้องการ

  • ลิงก์รุ่น: ใช้ฟีเจอร์นี้เมื่อต้องการแชร์รุ่นที่เฉพาะเจาะจงกับผู้ทดสอบ ดูวิธีใช้ลิงก์รุ่นได้ที่ เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้Firebaseคอนโซล นอกจากนี้ ลิงก์เหล่านี้ยังพร้อมใช้งานกับเครื่องมือบรรทัดคำสั่ง (CLI) ของ Firebase, fastlane และ Gradle เพื่อใช้กับเครื่องมือการทำงานอัตโนมัติของบิลด์
  • การแจ้งเตือนในแอป: ใช้การแจ้งเตือนเหล่านี้เมื่อต้องการตรวจสอบว่าผู้ทดสอบกำลังทดสอบแอปเวอร์ชันล่าสุดอยู่ การผสานรวม App Distribution Android SDK ของ Firebase จะช่วยให้คุณแสดงการแจ้งเตือนภายในแอปโดยตรงต่อผู้ทดสอบได้เมื่อมีบิลด์ใหม่ของแอป ดูวิธีเพิ่มการแจ้งเตือนในแอปได้ที่แจ้งให้ผู้ทดสอบทราบเกี่ยวกับบิลด์ใหม่

นำสิทธิ์การเข้าถึงสำหรับผู้ทดสอบที่ลาออกจากบริษัทออกโดยอัตโนมัติ

เมื่อเวิร์กโฟลว์การทดสอบภายใน CI/CD พร้อมใช้งานแล้ว คุณต้องตรวจสอบว่าผู้ที่ออกจากบริษัทจะไม่มีสิทธิ์เข้าถึงบิลด์ภายในอีกต่อไป App Distribution มีตัวเลือกต่อไปนี้เพื่อช่วยคุณจัดการสิทธิ์เข้าถึงบิลด์ของผู้ทดสอบ