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

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

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

หากต้องการการทดสอบที่ทำงานด้วยระบบ AI ให้ดูเอเจนต์ App Testing แทน

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

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

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

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

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

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

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

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

ตัวเลือก 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 ส่วน และใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดค่าการเผยแพร่ไปยังฟีเจอร์ Automated Tester

พารามิเตอร์บิลด์ 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

เผยแพร่แอปไปยัง Automated Tester โดยใช้ Fastlane

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

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