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

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

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

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

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

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

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