ทดสอบแอป Android โดยอัตโนมัติ

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

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

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

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

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

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

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

  1. เปิดหน้า App Distribution ของคอนโซล Firebase เลือกโปรเจ็กต์ Firebase เมื่อได้รับข้อความแจ้ง
  2. ในหน้ารุ่น ให้เลือกแอปที่คุณต้องการเผยแพร่จากเมนูแบบเลื่อนลง
  3. ลากไฟล์ APK ของแอปไปที่คอนโซลเพื่ออัปโหลด
  4. เมื่อการอัปโหลดเสร็จสมบูรณ์ ให้เลือกผู้ทดสอบอัตโนมัติในแถบค้นหาเพิ่มผู้ทดสอบหรือกลุ่ม
  5. หากต้องการปรับแต่งการทดสอบอัตโนมัติ ให้คลิกไอคอนแก้ไข แล้วเลือกการปรับแต่งในกล่องโต้ตอบปรับแต่งการทดสอบอัตโนมัติ
  6. (ไม่บังคับ) ในกล่องโต้ตอบการกำหนดค่าอุปกรณ์ ให้เลือกระดับ API, การวางแนวของอุปกรณ์ และภาษาที่ตรงกับข้อกำหนดการทดสอบ
  7. (ไม่บังคับ) คลิกเมนูแบบเลื่อนลงข้อมูลเข้าสู่ระบบเพื่อสร้างชื่อผู้ใช้และรหัสผ่านที่กำหนดเอง ซึ่งสามารถใช้ระหว่างการทดสอบหากแอปต้องใช้ข้อมูลเข้าสู่ระบบ
  8. คลิกจัดจำหน่าย นอกจากนี้ คุณยังเพิ่มบันทึกประจำรุ่น (ไม่บังคับ) ให้แอปได้ด้วย

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