เอกสารนี้จะแนะนำแนวทางปฏิบัติแนะนำสำหรับการใช้ 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 ให้ทำตามขั้นตอนต่อไปนี้
- เปิดหน้า App Distribution ในคอนโซล Firebase
- เลือกแอป Android
- คลิกเริ่มต้นใช้งาน
เนื่องจาก Android App Bundle (AAB) กำลังกลายเป็นรูปแบบแพ็กเกจ Android ที่พบมากที่สุด เราจึงขอแนะนำให้คุณตั้งค่าความสามารถในการเผยแพร่ AAB ให้ผู้ทดสอบโดย ลิงก์กับ Google Play
ทำให้เวิร์กโฟลว์การทดสอบแอปเวอร์ชันทดลองก่อนเปิดตัวเป็นแบบอัตโนมัติโดยใช้ไปป์ไลน์ CI/CD
หากต้องการทำให้การสร้างและเผยแพร่แอปให้ผู้ทดสอบเป็นแบบอัตโนมัติและคุณ're ใช้ 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 โดยใช้ App Distribution ปลั๊กอิน Gradle ปลั๊กอินนี้ช่วยให้คุณระบุผู้ทดสอบและบันทึกประจำรุ่นในไฟล์ build.gradle ของแอป ซึ่งช่วยให้คุณกำหนดค่าการเผยแพร่สำหรับแอปประเภทบิลด์และเวอร์ชันต่างๆ ได้
ดูวิธีผสานรวม App Distribution กับ Gradle ได้ที่ เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้ Gradle
ใช้ Firebase CLI
ใช้เครื่องมือ CLI Firebase ที่ 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 ที่ไม่ซ้ำกันซึ่งช่วยให้ผู้ทดสอบป้อนอีเมลเพื่อลงชื่อสมัครเข้าร่วมทดสอบแอปได้ การเปิดโอกาสให้ผู้ใช้เพิ่มตัวเองลงในรายชื่อผู้ทดสอบแอปเป็นวิธีที่ราบรื่นในการเพิ่มฐานผู้ทดสอบภายใน
กรณีการใช้งานลิงก์คำเชิญ ได้แก่ โปรแกรม Dogfood ของบริษัท องค์กรที่มีทีม QA ขนาดใหญ่ และกลุ่มนักพัฒนาแอปที่ต้องการให้ลูกค้าแต่ละรายควบคุมการเข้าถึงของผู้ทดสอบได้
เราขอแนะนำให้สร้างลิงก์คำเชิญสำหรับกลุ่ม ระบบจะเพิ่มผู้ทดสอบที่ลงชื่อสมัครใช้โดยใช้ลิงก์คำเชิญลงในรุ่นต่อๆ ไปโดยอัตโนมัติ
ดูข้อมูลเพิ่มเติมได้ที่สร้างลิงก์คำเชิญ และ เพิ่มและนำผู้ทดสอบออกจากกลุ่ม
ตรวจสอบว่าผู้ทดสอบกำลังทดสอบแอปเวอร์ชันที่คุณต้องการ
เมื่อมีการอัปโหลดแอปเวอร์ชันใหม่ ระบบจะแจ้งให้ผู้ทดสอบทราบทางอีเมล คุณสามารถใช้ฟีเจอร์ต่อไปนี้ ได้แก่ ลิงก์รุ่นและการแจ้งเตือนในแอป เพื่อเสริมการแจ้งเตือนนี้และตรวจสอบว่าผู้ทดสอบกำลังทดสอบแอปเวอร์ชันที่คุณต้องการ
- ลิงก์รุ่น: ใช้ฟีเจอร์นี้เมื่อต้องการแชร์แอปเวอร์ชันหนึ่งๆ กับผู้ทดสอบ ดูวิธีใช้ลิงก์รุ่นได้ที่ เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้Firebaseคอนโซล ลิงก์เหล่านี้ยัง พร้อมใช้งานกับเครื่องมือบรรทัดคำสั่ง (CLI) ของ Firebase, fastlane และ Gradle เพื่อใช้กับเครื่องมือการสร้างอัตโนมัติ
- การแจ้งเตือนในแอป: ใช้การแจ้งเตือนเหล่านี้เมื่อต้องการให้ผู้ทดสอบทดสอบแอปเวอร์ชันล่าสุด การผสานรวม Firebase App Distribution Android SDK จะช่วยให้คุณแสดงการแจ้งเตือนภายในแอปให้ผู้ทดสอบทราบได้โดยตรงเมื่อมีบิลด์ใหม่ของแอปพร้อมใช้งาน ดูวิธีเพิ่มการแจ้งเตือนในแอปได้ที่ แจ้งให้ผู้ทดสอบทราบเกี่ยวกับบิลด์ใหม่
นำสิทธิ์เข้าถึงของผู้ทดสอบที่ออกจากบริษัทออกโดยอัตโนมัติ
เมื่อเวิร์กโฟลว์การทดสอบภายใน CI/CD ทำงานได้แล้ว คุณต้องตรวจสอบว่าผู้ที่ออกจากบริษัทจะไม่มีสิทธิ์เข้าถึงบิลด์ภายในอีกต่อไป App Distribution มีตัวเลือกต่อไปนี้เพื่อช่วยคุณจัดการการเข้าถึงบิลด์ของผู้ทดสอบ App Distribution ให้
- fastlane: ใช้ไฟล์ Fastfile หรือเรียกใช้การดำเนินการ fastlane โดยตรง ดูข้อมูลเพิ่มเติมได้ที่ เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้ fastlane
- Firebase CLI: ใช้การดำเนินการ
firebase appdistribution:testers:removeดูข้อมูลเพิ่มเติมได้ที่ เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้ Firebase CLI - Gradle: หากใช้ Gradle เพื่อนำผู้ทดสอบออก ให้ส่ง
appDistributionRemoveTestersพร้อมอาร์กิวเมนต์และ--PROJECT_NUMBER ในไฟล์--EMAILS build.gradleดูข้อมูลเพิ่มเติมได้ที่ เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้ Gradle - API Firebase App Distribution สาธารณะ:
ใช้ปลายทาง
testers.batchRemove