คำแนะนำนี้จะอธิบายวิธีเผยแพร่ APK ให้แก่ผู้ทดสอบโดยใช้ Firebase CLI เครื่องมือ CLI ให้คุณระบุผู้ทดสอบและหมายเหตุรุ่นสำหรับบิลด์ จากนั้นจึงเผยแพร่บิลด์ตามความเหมาะสม
ก่อนเริ่มต้น
เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากยังไม่ได้ดำเนินการ
หากไม่ได้ใช้ผลิตภัณฑ์ Firebase อื่นๆ คุณก็สร้างโปรเจ็กต์และลงทะเบียนแอปได้เพียงเท่านี้ แต่หากตัดสินใจที่จะใช้ผลิตภัณฑ์เพิ่มเติมในอนาคต โปรดทําตามขั้นตอนทั้งหมดในหน้าเว็บที่ลิงก์ไว้ด้านบน
ขั้นตอนที่ 1 สร้างแอป
เมื่อพร้อมที่จะเผยแพร่แอปเวอร์ชันทดลองให้ผู้ทดสอบแล้ว ให้สร้าง APK โดยใช้กระบวนการปกติ คุณต้องลงนาม APK ด้วยคีย์แก้ไขข้อบกพร่องหรือคีย์ App Signing
ขั้นตอนที่ 2 เผยแพร่แอปของคุณให้ผู้ทดสอบ
หากต้องการเผยแพร่แอปให้แก่ผู้ทดสอบ ให้อัปโหลดไฟล์ของแอปโดยใช้ CLI ของ Firebase:
- ติดตั้งหรืออัปเดต Firebase CLI เป็นเวอร์ชันล่าสุด (เราขอแนะนำให้ดาวน์โหลดไบนารีแบบสแตนด์อโลนสำหรับ CLI ที่เฉพาะเจาะจงสำหรับระบบปฏิบัติการของคุณ) อย่าลืมลงชื่อเข้าใช้และทดสอบว่าคุณเข้าถึงโปรเจ็กต์ได้
- ในหน้า App Distribution ของคอนโซล Firebase ให้เลือกแอปที่ต้องการเผยแพร่ แล้วคลิกเริ่มต้นใช้งาน
-
เรียกใช้คำสั่ง
appdistribution:distribute
เพื่ออัปโหลดแอปและเผยแพร่แอปให้ผู้ทดสอบ ใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดค่าการกระจายappdistribution:distribute options --app
ต้องระบุ: รหัสแอป Firebase ของแอป คุณดูรหัสแอปได้ในคอนโซล Firebase ในหน้าการตั้งค่าทั่วไป
--app 1:1234567890:android:0a1b2c3d4e5f67890
--token
โทเค็นการรีเฟรชที่พิมพ์เมื่อคุณตรวจสอบสิทธิ์สภาพแวดล้อม CI ด้วย Firebase CLI (อ่านข้อมูลเพิ่มเติมในใช้ CLI กับระบบ CI )
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-file
บันทึกประจำรุ่นสำหรับบิลด์นี้
คุณสามารถระบุบันทึกประจำรุ่นได้โดยตรง โดยทำดังนี้
--release-notes "Text of release notes"
หรือระบุเส้นทางไปยังไฟล์ข้อความธรรมดา
--release-notes-file "/path/to/release-notes.txt"
--testers
--testers-file
อีเมลของผู้ทดสอบที่คุณต้องการเชิญ
คุณสามารถระบุผู้ทดสอบเป็นรายการอีเมลที่คั่นด้วยคอมมา ดังนี้
--testers "ali@example.com, bri@example.com, cal@example.com"
หรือจะระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรายการอีเมลที่คั่นด้วยคอมมาก็ได้ โดยทำดังนี้
--testers-file "/path/to/testers.txt"
--groups
--groups-file
กลุ่มผู้ทดสอบที่ต้องการเชิญ (ดูจัดการผู้ทดสอบ) โดยระบุกลุ่มโดยใช้
ชื่อแทนกลุ่ม ซึ่งคุณค้นหาได้ในคอนโซล Firebaseคุณสามารถระบุกลุ่มเป็นรายการที่คั่นด้วยคอมมา ดังนี้
--groups "qa-team, trusted-testers"
หรือจะระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรายการชื่อกลุ่มที่คั่นด้วยคอมมาก็ได้ ดังนี้
--groups-file "/path/to/groups.txt"
--debug
Flag ที่คุณใส่เพื่อพิมพ์เอาต์พุตบันทึกแบบละเอียดได้
--test-devices
--test-devices-file
การเผยแพร่ประเภทต่อไปนี้เป็นส่วนหนึ่งของฟีเจอร์เบต้าสำหรับผู้ทดสอบอัตโนมัติ
อุปกรณ์ทดสอบที่คุณต้องการแจกจ่ายบิลด์ให้ (ดูการทดสอบอัตโนมัติ)
คุณสามารถระบุผู้ทดสอบเป็นรายการอีเมลที่คั่นด้วยคอมมา ดังนี้
--test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"
หรือจะระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรายการอุปกรณ์ทดสอบที่คั่นด้วยเซมิโคลอนก็ได้ ดังนี้
--test-devices-file: "/path/to/test-devices.txt"
--test-username
ชื่อผู้ใช้สำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ
--test-password
--test-password-file
รหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ในระหว่างการทดสอบอัตโนมัติ
หรือระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรหัสผ่านก็ได้ ดังนี้
--test-password-file: "/path/to/test-password.txt"
--test-username-resource
ชื่อทรัพยากรสำหรับช่องชื่อผู้ใช้สำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ในระหว่างการทดสอบอัตโนมัติ
--test-password-resource
ชื่อทรัพยากรของช่องรหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ
--test-non-blocking
เรียกใช้การทดสอบอัตโนมัติแบบไม่พร้อมกัน ไปที่คอนโซล Firebase เพื่อดูผลการทดสอบอัตโนมัติ
เช่น
firebase appdistribution:distribute test.apk \ --app 1:1234567890:android:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
Firebase CLI จะแสดงลิงก์ต่อไปนี้หลังจากการอัปโหลดรุ่น ลิงก์เหล่านี้จะช่วยคุณจัดการไบนารีและตรวจสอบว่าผู้ทดสอบและนักพัฒนาซอฟต์แวร์รายอื่นๆ มีรุ่นที่ถูกต้อง
firebase_console_uri
- ลิงก์ไปยังคอนโซล Firebase ที่แสดงผลงานซิงเกิล โดยคุณจะแชร์ลิงก์นี้กับนักพัฒนาซอฟต์แวร์คนอื่นๆ ในองค์กรได้testing_uri
- ลิงก์ไปยังรุ่นในประสบการณ์การใช้งาน (แอป Android ที่มาพร้อมเครื่อง) ที่ช่วยให้ผู้ทดสอบดูบันทึกประจำรุ่นและติดตั้งแอปลงในอุปกรณ์ของตนได้ ผู้ทดสอบต้องมีสิทธิ์เข้าถึงรุ่นจึงจะใช้ลิงก์ได้binary_download_uri
- ลิงก์ที่รับรองซึ่งดาวน์โหลดและติดตั้งไบนารีของแอปโดยตรง (ไฟล์ APK หรือ AAB) ลิงก์จะหมดอายุใน 1 ชั่วโมง
จัดการผู้ทดสอบและกลุ่ม
นอกจากการเผยแพร่รุ่นแล้ว คุณยังใช้
appdistribution:testers:add
และappdistribution:testers:remove
เพื่อเชิญผู้ทดสอบใหม่หรือนำผู้ทดสอบที่มีอยู่ออกจากโปรเจ็กต์ Firebase ได้ด้วยเมื่อเพิ่มผู้ทดสอบลงในโปรเจ็กต์ Firebase แล้ว คุณจะเพิ่มผู้ทดสอบไปยังรุ่นต่างๆ ได้ เมื่อนำผู้ทดสอบออกแล้ว ผู้ทดสอบรายดังกล่าวจะเข้าถึงรุ่นต่างๆ ในโปรเจ็กต์ไม่ได้อีกต่อไป โปรดทราบว่าผู้ทดสอบที่ถูกนำออกเมื่อเร็วๆ นี้จะยังคงเข้าถึงรุ่นของคุณได้ในช่วงระยะเวลาหนึ่ง
เช่น
firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
ต้องคั่นอีเมลผู้ทดสอบด้วยการเว้นวรรค นอกจากนี้ คุณยังระบุผู้ทดสอบได้โดยใช้
--file /path/to/testers.txt
หากมีผู้ทดสอบจํานวนมาก คุณควรพิจารณาใช้กลุ่ม ดังนี้ คุณสามารถใช้
appdistribution:group:create
และappdistribution:group:delete
เพื่อสร้างหรือลบกลุ่มในโปรเจ็กต์ Firebase ได้ใช้
--group-alias
เพื่อระบุกลุ่มสําหรับคําสั่งappdistribution:testers:add
และappdistribution:testers:remove
เช่น
firebase appdistribution:group:create "QA team" qa-team
firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:group:delete qa-team
เมื่อคุณเผยแพร่บิลด์แล้ว บิลด์จะปรากฏในแดชบอร์ดApp Distributionของคอนโซล Firebase เป็นเวลา 150 วัน (5 เดือน) เมื่อบิลด์เหลือเวลาอีก 30 วันจะหมดอายุ ประกาศการหมดอายุจะปรากฏทั้งในคอนโซลและรายการบิลด์ของผู้ทดสอบในอุปกรณ์ทดสอบ
ผู้ทดสอบที่ยังไม่ได้ได้รับเชิญให้ทดสอบแอปจะได้รับคำเชิญทางอีเมลเพื่อเริ่มต้นใช้งาน และผู้ทดสอบปัจจุบันจะได้รับการแจ้งเตือนทางอีเมลว่าบิลด์ใหม่พร้อมให้ทดสอบแล้ว (อ่านคู่มือการตั้งค่าผู้ทดสอบเพื่อดูวิธีการติดตั้งแอปทดสอบ) คุณสามารถตรวจสอบสถานะของผู้ทดสอบแต่ละรายได้ว่าพวกเขายอมรับคำเชิญหรือไม่และดาวน์โหลดแอปแล้วในคอนโซล Firebase หรือไม่
ผู้ทดสอบมีเวลา 30 วันในการตอบรับคำเชิญให้ทดสอบแอปก่อนที่คำเชิญจะหมดอายุ เมื่อคำเชิญหมดอายุในอีก 5 วัน การแจ้งเตือนการหมดอายุจะปรากฏในคอนโซล Firebase ถัดจากผู้ทดสอบในรุ่น คุณต่ออายุคำเชิญได้โดยการส่งคำเชิญอีกครั้งโดยใช้เมนูแบบเลื่อนลงในแถวผู้ทดสอบ
ขั้นตอนถัดไป
ใช้ความคิดเห็นในแอปเพื่อให้ผู้ทดสอบส่งความคิดเห็นเกี่ยวกับแอปของคุณได้ง่ายๆ (รวมถึงภาพหน้าจอ)
ดูวิธีแสดงการแจ้งเตือนในแอปให้ผู้ทดสอบทราบเมื่อมีเวอร์ชันใหม่ของแอปให้ติดตั้ง
ดูแนวทางปฏิบัติแนะนำสำหรับการเผยแพร่แอป Android ให้แก่ผู้ทดสอบ QA โดยใช้ CI/CD