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

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

หากคุณใช้แพลตฟอร์มของ 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

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

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

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

โปรดคํานึงถึงขีดจํากัดของการเผยแพร่

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 ลิงก์เหล่านี้ยัง ใช้ได้กับ Firebase ของเรา fastlane และ แกรเดิล เครื่องมือบรรทัดคำสั่ง (CLI) สำหรับใช้กับเครื่องมือบิลด์อัตโนมัติ
  • การแจ้งเตือนในแอป: ใช้การแจ้งเตือนเหล่านี้เมื่อคุณต้องการดูแลให้ ผู้ทดสอบกำลังทดสอบแอปเวอร์ชันล่าสุดของคุณ การผสานรวม SDK สำหรับ Android App Distribution ของ Firebase คุณสามารถแสดงการแจ้งเตือนได้โดยตรงภายใน ให้กับผู้ทดสอบเมื่อแอปรุ่นใหม่พร้อมใช้งาน เพื่อเรียนรู้ วิธีเพิ่มการแจ้งเตือนในแอป โปรดดู แจ้งผู้ทดสอบเกี่ยวกับบิลด์ใหม่

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

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