เรียกใช้สคริปต์ Robo (iOS+)

เอกสารนี้อธิบายวิธีใช้ สคริปต์ Robo ซึ่งเป็นการทดสอบที่ทำให้งาน QA ด้วยตนเองสำหรับแอปมือถือเป็นแบบอัตโนมัติ และเปิดใช้งานการผสานรวมอย่างต่อเนื่อง (CI) และกลยุทธ์การทดสอบก่อนการเปิดตัว ตัวอย่างเช่น คุณสามารถใช้สคริปต์ Robo เพื่อทดสอบการเดินทางของผู้ใช้ทั่วไปหรือระบุอินพุตอินเทอร์เฟซผู้ใช้ (UI) เฉพาะ เช่น ชื่อผู้ใช้และรหัสผ่าน สคริปต์ Robo เป็นคุณลักษณะหนึ่งของ การทดสอบ Robo

สคริปต์ Robo ใช้ การทดสอบ Robo เป็นเครื่องมือทดสอบ ในรูปแบบพื้นฐานที่สุด สคริปต์ Robo ประกอบด้วยลำดับการทำงานของ UI เช่น ป้อนข้อความ 'ชื่อผู้ใช้' จากนั้น แตะปุ่มตกลง สคริปต์ Robo ยังรวมถึงการดำเนินการ เช่น การรอให้องค์ประกอบปรากฏขึ้น การแตะที่จุดเฉพาะภายในองค์ประกอบ และการดำเนินการคำสั่งเชลล์ Android Debug Bridge ( adb )

สคริปต์ Robo มีข้อดีเหนือเฟรมเวิร์กการทดสอบแบบดั้งเดิมดังต่อไปนี้:

ความสามารถ คำอธิบาย
มีความแข็งแกร่งสูง สคริปต์ Robo สามารถทนต่อความแตกต่างทางโครงสร้างและพฤติกรรมที่สำคัญระหว่างเวอร์ชันของแอปและความไม่สม่ำเสมอของแอปได้
ปลายเปิด หลังจากสคริปต์ Robo เสร็จสิ้น การทดสอบ Robo พื้นฐานจะเข้ามาแทนที่และทดสอบแอปต่อได้ วิธีการทดสอบอย่างต่อเนื่องนี้ช่วยให้เกิดกรณีการใช้งานที่สำคัญได้หลายกรณี ตัวอย่างเช่น คุณสามารถใช้สคริปต์ Robo เพื่อนำแอปเข้าสู่สถานะใดสถานะหนึ่งโดยดำเนินการขั้นตอนการลงชื่อเข้าใช้แบบกำหนดเอง
บันทึกได้ คุณไม่จำเป็นต้องเขียนโค้ดสคริปต์ Robo ด้วยตนเอง สามารถบันทึกได้โดยใช้เครื่องบันทึกสคริปต์ Robo ใน Android Studio โดยทั่วไปแล้ว การสร้างหรือแก้ไขสคริปต์ Robo ไม่จำเป็นต้องมีความรู้เกี่ยวกับการพัฒนาอุปกรณ์เคลื่อนที่
ยืดหยุ่นได้ สคริปต์ Robo สามารถโต้ตอบกับองค์ประกอบ UI ที่ไม่ใช่เจ้าของภาษาซึ่งพบได้ทั่วไปในเกม

สคริปต์ Robo จะถูกทริกเกอร์ตามเงื่อนไขระหว่างการทดสอบ Robo ซึ่งช่วยให้ผู้ใช้เพิ่มพฤติกรรมของ Robo ได้ โดยทั่วไปเพื่อให้ครอบคลุมมากขึ้นหรือกำหนดเป้าหมายการทำงานเฉพาะ ตรงกันข้ามกับเฟรมเวิร์กการทดสอบแบบดั้งเดิม สคริปต์ Robo รองรับสิ่งต่อไปนี้:

  • เงื่อนไขการทริกเกอร์ต่างๆ เช่น ชื่อแพ็กเกจแอปเฉพาะที่ใช้งานอยู่ (หรือไม่) หรือมีองค์ประกอบเฉพาะที่แสดงบนหน้าจอ (หรือไม่)
  • การควบคุมการดำเนินการ เช่น จำนวนการดำเนินการสูงสุด ลำดับความสำคัญ ขั้นตอนการรวบรวมข้อมูลที่เกี่ยวข้อง
  • ประเภทการกระทำที่แหวกแนว (แบบมีเงื่อนไข การละเว้นองค์ประกอบ การปิดหน้าจอ)

เราขอแนะนำให้คุณใช้สคริปต์ Robo ทุกครั้งที่เป็นไปได้ เนื่องจากสามารถดูแลรักษาได้อย่างง่ายดาย ตัวอย่างเช่น คุณสามารถใช้สคริปต์ Robo เพื่อทำสิ่งต่อไปนี้:

  • นำทางขั้นตอนการทำงานที่สำคัญเพื่อไปยังแกนหลักของฟังก์ชันการทำงานของแอป ตัวอย่างเช่น คุณสามารถลงชื่อเข้าใช้ ตั้งค่าสถานะของแอปหลังจากการเปิดตัวครั้งแรก และลงทะเบียนผู้ใช้ใหม่
  • มุ่งเน้น Robo ในส่วนใดส่วนหนึ่งของแอปเพื่อใช้ประโยชน์สูงสุดจากเวลาทดสอบ Robo สคริปต์ Robo จะแนะนำการทดสอบ Robo เพื่อเข้าถึงส่วนที่เกี่ยวข้องของแอป โดยที่การทดสอบ Robo จะทำการรวบรวมข้อมูลอัตโนมัติเต็มรูปแบบต่อ
  • นำแอปเข้าสู่สถานะหรือหน้าจอเฉพาะเพื่อทำการวิเคราะห์ เช่น เพื่อวิเคราะห์ข้อความในแอป นโยบายความเป็นส่วนตัว หรือระดับเฉพาะของเกม
  • ทำการทดสอบการใช้เครื่องมือตั้งแต่ต้นทางถึงปลายทาง โดยมีหรือไม่มีการทดสอบ Robo เพื่อดำเนินการรวบรวมข้อมูลอัตโนมัติเต็มรูปแบบต่อหลังจากสคริปต์ Robo เสร็จสมบูรณ์

ใช้ฟีเจอร์สคริปต์ Robo ขั้นสูงเพิ่มเติมเพื่อทำสิ่งต่อไปนี้:

  • ดำเนินการก่อนที่ Robo จะเริ่มรวบรวมข้อมูลแอประหว่างการทดสอบหรือหลังจากการรวบรวมข้อมูลเสร็จสิ้น เช่น ทำความสะอาดข้อมูลแอประหว่างการทดสอบก่อนรวบรวมข้อมูล หรือเปลี่ยนการตั้งค่าอุปกรณ์
  • เปลี่ยนลักษณะการทำงานของ Robo ในระหว่างการรวบรวมข้อมูล โดยเฉพาะ:
    • ทำให้ Robo เพิกเฉยต่อวิดเจ็ต UI หรือหน้าจอแอปบางส่วน
    • จัดเตรียมการกระทำแบบกำหนดเองสำหรับ Robo เพื่อดำเนินการเมื่อย้อนรอยจากหน้าจอใดหน้าจอหนึ่ง
    • ทำให้ Robo ดำเนินการเฉพาะเมื่อใดก็ตามที่พบหน้าจอแอปใดหน้าจอหนึ่งในระหว่างการรวบรวมข้อมูล
  • ปรับแต่งวิธีที่ Robo ทำการรวบรวมข้อมูลได้อย่างสมบูรณ์ ตัวอย่างเช่น ใช้การผสมผสานระหว่างการดำเนินการแบบมีเงื่อนไขและแบบไม่มีเงื่อนไขเพื่อให้แอปอยู่ระหว่างการทดสอบในพื้นหลังตลอดการรวบรวมข้อมูล ขณะเดียวกันก็ดำเนินการจัดการอุปกรณ์และปิดกล่องโต้ตอบป๊อปอัปที่ปรากฏขึ้นระหว่างทาง

โปรดทราบว่าสคริปต์ Robo ไม่ได้แทนที่การทดสอบทุกประเภท คุณยังต้องมีการทดสอบหน่วยเพื่อตรวจจับข้อบกพร่องทางลอจิกระดับต่ำในแอปของคุณ โดยทั่วไปการทดสอบเหล่านี้ไม่จำเป็นต้องใช้สภาพแวดล้อม Android หรือ iOS เราขอแนะนำให้คุณเสริมการทดสอบสคริปต์ Robo ด้วยการทดสอบเครื่องมือแบบกำหนดเป้าหมายที่สามารถยืนยันรายละเอียดเฉพาะเจาะจงเกี่ยวกับตรรกะทางธุรกิจ ซึ่งแสดงออกมาได้ดีที่สุดในรูปแบบโค้ด

ขั้นตอนถัดไป