คู่มือนี้อธิบายวิธีเผยแพร่บิลด์ให้กับผู้ทดสอบโดยอัตโนมัติโดยใช้ฟีเจอร์ผู้ทดสอบอัตโนมัติของ App Distribution ในคอนโซล Firebase ฟีเจอร์ผู้ทดสอบอัตโนมัติมีเครื่องมือทดสอบควันซึ่งพร้อมใช้งานตลอดเวลาและใช้งานง่ายสำหรับแอปของคุณ
ก่อนเริ่มต้น
เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากยังไม่ได้ดำเนินการ
หากไม่ได้ใช้ผลิตภัณฑ์ Firebase อื่นๆ อยู่ คุณต้องสร้างโปรเจ็กต์และลงทะเบียนแอปเท่านั้น อย่างไรก็ตาม หากคุณตัดสินใจที่จะใช้ผลิตภัณฑ์อื่นๆ ในอนาคต โปรดทำตามขั้นตอนทั้งหมดในเพิ่ม Firebase โดยใช้คอนโซล Firebase
เมื่อคุณพร้อมที่จะจัดจำหน่ายแอปเวอร์ชันก่อนเผยแพร่ให้แก่ผู้ทดสอบแล้ว ให้สร้าง APK โดยใช้ขั้นตอนปกติของคุณ คุณต้องลงนาม APK ด้วยคีย์การแก้ไขข้อบกพร่องหรือคีย์ App Signing
เผยแพร่แอปไปยังผู้ทดสอบอัตโนมัติโดยใช้คอนโซล Firebase
หากต้องการเผยแพร่แอปไปยังผู้ทดสอบอัตโนมัติ ให้อัปโหลดไฟล์ APK โดยใช้คอนโซล Firebase โดยทำดังนี้
- เปิดหน้า App Distribution ของคอนโซล Firebase เลือกโปรเจ็กต์ Firebase เมื่อระบบแจ้ง
- ในหน้ารุ่น ให้เลือกแอปที่คุณต้องการเผยแพร่จากเมนูแบบเลื่อนลง
- ลากไฟล์ APK ของแอปไปยังคอนโซลเพื่ออัปโหลด
- เมื่ออัปโหลดเสร็จแล้ว ให้เลือกผู้ทดสอบอัตโนมัติในแถบค้นหาเพิ่มผู้ทดสอบหรือกลุ่ม
- หากต้องการปรับแต่งการทดสอบอัตโนมัติ ให้คลิกไอคอนแก้ไข แล้วเลือกการกำหนดค่าในกล่องโต้ตอบปรับแต่งการทดสอบอัตโนมัติ
- (ไม่บังคับ) ในกล่องโต้ตอบการกำหนดค่าอุปกรณ์ ให้เลือกระดับ API, การวางแนวอุปกรณ์ และภาษาที่เป็นไปตามข้อกำหนดการทดสอบ
- (ไม่บังคับ) คลิกเมนูแบบเลื่อนลงข้อมูลเข้าสู่ระบบเพื่อสร้างชื่อผู้ใช้และรหัสผ่านที่กำหนดเองซึ่งจะใช้ได้ในระหว่างการทดสอบหากแอปต้องใช้ข้อมูลเข้าสู่ระบบ
- คลิกจัดจำหน่าย นอกจากนี้ คุณยังเพิ่มบันทึกประจำรุ่นสำหรับแอปได้ด้วย (ไม่บังคับ)
เผยแพร่แอปให้กับผู้ทดสอบอัตโนมัติโดยใช้ Firebase CLI
เรียกใช้คำสั่ง appdistribution:distribute
เพื่ออัปโหลดแอปและแจกจ่ายให้ผู้ทดสอบ ใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดค่าการแจกจ่ายไปยังฟีเจอร์ผู้ทดสอบอัตโนมัติ
ตัวเลือกการเผยแพร่:จัดจำหน่าย | |
---|---|
--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 CLI และวิธีต่างๆ ในการกำหนดค่าการเผยแพร่ที่หัวข้อเผยแพร่แอป Android ให้กับผู้ทดสอบโดยใช้ Firebase CLI
เผยแพร่แอปไปยังผู้ทดสอบอัตโนมัติโดยใช้ Gradle
คุณกำหนดค่า App Distribution ได้โดยการเพิ่มส่วน firebaseAppDistribution
อย่างน้อย 1 ส่วนและใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดค่าการกระจายไปยังฟีเจอร์ผู้ทดสอบอัตโนมัติ
พารามิเตอร์บิลด์ของ App Distribution | |
---|---|
testDevices หรือ
testDevicesFile
|
อุปกรณ์ทดสอบที่คุณต้องการเผยแพร่บิลด์โดยใช้การทดสอบอัตโนมัติ คุณระบุอุปกรณ์ทดสอบเป็นรายการที่คั่นด้วยเครื่องหมายอัฒภาคได้ testDevices="model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"
หรือจะระบุเส้นทางไปยังไฟล์ที่มีรายการข้อมูลจำเพาะของอุปกรณ์ที่คั่นด้วยเครื่องหมายอัฒภาคก็ได้ ดังนี้ testDevicesFile="/path/to/testDevices.txt"
|
testUsername
|
ชื่อผู้ใช้สำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ |
testUsernameResource
|
ชื่อทรัพยากรสำหรับช่องชื่อผู้ใช้สำหรับการเข้าสู่ระบบอัตโนมัติที่ใช้ระหว่างการทดสอบอัตโนมัติ |
testPassword หรือ
testPasswordFile
|
รหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่ใช้ระหว่างการทดสอบอัตโนมัติ หรือจะระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรหัสผ่านก็ได้ testPasswordFile="/path/to/testPassword.txt" |
testPasswordResource
|
ชื่อทรัพยากรสำหรับช่องรหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ |
testNonBlocking |
เรียกใช้การทดสอบอัตโนมัติแบบไม่พร้อมกัน ไปที่คอนโซล Firebase เพื่อดูผลการทดสอบอัตโนมัติ |
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเริ่มต้นใช้งาน Gradle และวิธีการต่างๆ ในการกำหนดค่าการเผยแพร่ที่หัวข้อเผยแพร่แอป Android ให้กับผู้ทดสอบโดยใช้ Gradle
เผยแพร่แอปให้กับผู้ทดสอบอัตโนมัติโดยใช้ Fastlane
ใน ./fastlane/Fastfile
เลน ให้เพิ่ม firebase_app_distribution
บล็อก ใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดค่าการแจกจ่ายไปยังฟีเจอร์ผู้ทดสอบอัตโนมัติ
พารามิเตอร์ firebase_app_distribution | |
---|---|
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 เพื่อดูผลการทดสอบอัตโนมัติ |
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเริ่มต้นใช้งาน Fastlane และวิธีต่างๆ ในการกำหนดค่าการเผยแพร่ที่หัวข้อเผยแพร่แอป Android ให้แก่ผู้ทดสอบโดยใช้ Fastlane
สถานะการ Crawl ทดสอบอัตโนมัติ
แท็บผลการทดสอบอัตโนมัติจะแสดงปัญหาการทดสอบ ภาพหน้าจอของแอป และวิดีโอของการ Crawl ทดสอบสำหรับอุปกรณ์แต่ละเครื่องเพื่อช่วยคุณตีความผลการทดสอบ คุณสามารถดูสถานะของการทดสอบได้ในหน้าผลการทดสอบ
สถานะการ Crawl | คำอธิบาย |
---|---|
รอดำเนินการ | การทดสอบอัตโนมัติยังคงทำงานอยู่และผลการทดสอบจะพร้อมใช้งานเร็วๆ นี้ |
ผ่าน | การทดสอบอัตโนมัติทำการ Crawl แอปของคุณสำเร็จและไม่พบข้อขัดข้องเลย |
ล้มเหลว | การทดสอบอัตโนมัติล้มเหลวเนื่องจากแอปขัดข้องระหว่างการทดสอบ |
ยังไม่สรุป | การทดสอบอัตโนมัติล้มเหลวเนื่องจากข้อผิดพลาดของโครงสร้างพื้นฐาน |