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

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

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

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

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

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

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

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

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

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

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

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

ตัวเลือก 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

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

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