อรรถศาสตร์

การทดสอบ UI ใน Compose ใช้ Semantics เพื่อโต้ตอบกับลำดับชั้น UI Semantics หรือความหมายตามชื่อจะให้ความหมายแก่ UI ในบริบทนี้ "UI" (หรือองค์ประกอบ) อาจหมายถึงทุกอย่างตั้งแต่คอมโพสได้รายการเดียวไปจนถึงทั้งหน้าจอ แผนผัง Semantics จะสร้างขึ้นควบคู่ไปกับลำดับชั้น UI และอธิบายลำดับชั้น

คุณดูข้อมูลเพิ่มเติมเกี่ยวกับ Semantics โดยทั่วไปได้ในหัวข้อ Semantics ใน Compose

แผนภาพแสดงเลย์เอาต์ของ UI ทั่วไป และวิธีที่เลย์เอาต์จะเชื่อมโยงกับแผนผังความหมายที่เกี่ยวข้อง

รูปที่ 1 ลำดับชั้น UI ทั่วไปและแผนผัง Semantics

เฟรมเวิร์ก Semantics ใช้สำหรับการช่วยเหลือพิเศษเป็นหลัก ดังนั้นการทดสอบจึงใช้ประโยชน์จากข้อมูลที่ Semantics เปิดเผยเกี่ยวกับลำดับชั้น UI นักพัฒนาแอปเป็นผู้กำหนดสิ่งที่ต้องเปิดเผยและปริมาณที่ต้องเปิดเผย

ปุ่มที่มีกราฟิกและข้อความ

รูปที่ 2 ปุ่มทั่วไปที่มีไอคอนและข้อความ

ตัวอย่างเช่น หากมีปุ่มลักษณะนี้ซึ่งประกอบด้วยไอคอนและองค์ประกอบข้อความ แผนผัง Semantics เริ่มต้นจะมีป้ายกำกับข้อความ "ถูกใจ" เท่านั้น เนื่องจากคอมโพสได้บางรายการ เช่น Text ได้เปิดเผยพร็อพเพอร์ตี้บางอย่างไปยังแผนผัง Semantics แล้ว คุณสามารถเพิ่มพร็อพเพอร์ตี้ลงในแผนผัง Semantics ได้โดยใช้ Modifier

MyButton(
    modifier = Modifier.semantics { contentDescription = "Add to favorites" }
)

แหล่งข้อมูลเพิ่มเติม

  • ทดสอบแอปใน Android: หน้า Landing Page หลักของการทดสอบ Android จะให้มุมมองที่กว้างขึ้นเกี่ยวกับหลักการและเทคนิคการทดสอบ
  • หลักการพื้นฐานของการทดสอบ: ดูข้อมูลเพิ่มเติม เกี่ยวกับแนวคิดหลักเบื้องหลังการทดสอบแอป Android
  • การทดสอบในเครื่อง: คุณสามารถทำการทดสอบบางอย่าง ในเครื่องบนเวิร์กสเตชันของคุณเอง
  • การทดสอบการวัดคุม: คุณควรทำการทดสอบการวัดคุมด้วย นั่นคือการทดสอบที่ทำงานในอุปกรณ์โดยตรง
  • การรวมอย่างต่อเนื่อง: การรวมอย่างต่อเนื่องช่วยให้คุณรวมการทดสอบเข้ากับไปป์ไลน์การติดตั้งใช้งานได้
  • ทดสอบขนาดหน้าจอต่างๆ: เนื่องจากผู้ใช้มีอุปกรณ์ให้เลือกมากมาย คุณจึงควรทดสอบขนาดหน้าจอต่างๆ
  • Espresso: แม้ว่าจะมีไว้สำหรับ UI ที่อิงตาม View แต่ความรู้เกี่ยวกับ Espresso ก็ยังเป็นประโยชน์สำหรับการทดสอบ Compose ในบางแง่มุม