ผู้ทดสอบอัตโนมัติ (Android)

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

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

หากต้องการการทดสอบที่ขับเคลื่อนด้วย AI โปรดดู เอเจนต์ App Testingแทน

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

เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากยังไม่ได้เพิ่ม

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

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

เผยแพร่แอปไปยังผู้ทดสอบอัตโนมัติโดยใช้คอนโซล Firebase

ตอนนี้ฟีเจอร์ผู้ทดสอบอัตโนมัติได้รวมอยู่ใน เอเจนต์ App Testing แล้ว หากต้องการใช้ฟีเจอร์นี้ ให้ เรียกใช้การทดสอบ ในคอนโซล Firebase แล้วเลือก "การ Crawl แบบสุ่ม"

เผยแพร่แอปไปยังผู้ทดสอบอัตโนมัติโดยใช้ Firebase CLI

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

appdistribution:distribute options
--test-devices or --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 or --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 Build Parameters
testDevices or 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 or testPasswordFile

รหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ

หรือระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรหัสผ่านได้ ดังนี้

testPasswordFile="/path/to/testPassword.txt"
testPasswordResource

ชื่อทรัพยากรสำหรับช่องรหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ

testNonBlocking

เรียกใช้การทดสอบอัตโนมัติแบบไม่พร้อมกัน ดูผลการทดสอบอัตโนมัติได้ในคอนโซล Firebase

ดูข้อมูลเพิ่มเติมเกี่ยวกับการเริ่มต้นใช้งาน Gradle และวิธีต่างๆ ในการกำหนดค่าการเผยแพร่ได้ที่หัวข้อ เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้ Gradle

เผยแพร่แอปไปยังผู้ทดสอบอัตโนมัติโดยใช้ fastlane

เพิ่มบล็อก firebase_app_distribution ในเลน ./fastlane/Fastfile ใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดค่าการเผยแพร่ไปยังฟีเจอร์ผู้ทดสอบอัตโนมัติ

firebase_app_distribution parameters
test_devices or 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 or 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 แอปของคุณได้สำเร็จและไม่พบข้อขัดข้อง
ล้มเหลว การทดสอบอัตโนมัติล้มเหลวเนื่องจากแอปขัดข้องระหว่างการทดสอบ
ยังไม่สรุป การทดสอบอัตโนมัติล้มเหลวเนื่องจากข้อผิดพลาดของโครงสร้างพื้นฐาน