การทดสอบ GUI – กรณีทดสอบ UI (ตัวอย่าง)

เพื่อทำความเข้าใจการทดสอบ GUI ก่อนอื่นให้ทำความเข้าใจ -

GUI คืออะไร?

อินเทอร์เฟซสำหรับแอปพลิเคชันคอมพิวเตอร์มีสองประเภท อินเทอร์เฟซบรรทัดคำสั่งเป็นที่ที่คุณพิมพ์ข้อความและคอมพิวเตอร์ตอบสนองต่อคำสั่งนั้น GUI ย่อมาจาก Graphical User Interface ที่คุณโต้ตอบกับคอมพิวเตอร์โดยใช้รูปภาพแทนข้อความ

ต่อไปนี้เป็นองค์ประกอบ GUI ที่สามารถใช้สำหรับการโต้ตอบระหว่างผู้ใช้และแอปพลิเคชัน:

GUI

การทดสอบ GUI คือการตรวจสอบความถูกต้องขององค์ประกอบข้างต้น

การทดสอบ GUI คืออะไร?

การทดสอบ GUI เป็นประเภทการทดสอบซอฟต์แวร์ที่ตรวจสอบส่วนติดต่อผู้ใช้แบบกราฟิกของซอฟต์แวร์ วัตถุประสงค์ของการทดสอบส่วนต่อประสานกราฟิกกับผู้ใช้ (GUI) คือเพื่อให้แน่ใจว่าฟังก์ชันการทำงานของแอปพลิเคชันซอฟต์แวร์ทำงานตามข้อกำหนดโดยการตรวจสอบหน้าจอและการควบคุม เช่น เมนู ปุ่ม ไอคอน ฯลฯ

GUI คือสิ่งที่ผู้ใช้เห็น สมมติว่าคุณเยี่ยมชม guru99.com สิ่งที่คุณจะเห็นคือหน้าแรก นั่นคือ GUI (ส่วนต่อประสานกราฟิกกับผู้ใช้) ของเว็บไซต์ ผู้ใช้ไม่เห็นซอร์สโค้ด อินเทอร์เฟซปรากฏแก่ผู้ใช้ โดยเฉพาะการเน้นไปที่โครงสร้างการออกแบบ รูปภาพ ว่าทำงานถูกต้องหรือไม่

การทดสอบ GUI

ในตัวอย่างข้างต้น หากเราต้องทดสอบ GUI เราจะตรวจสอบก่อนว่ารูปภาพควรมองเห็นได้อย่างสมบูรณ์ในเบราว์เซอร์ที่แตกต่างกัน

นอกจากนี้ยังมีลิงก์อยู่ด้วย และปุ่มควรใช้งานได้เมื่อคลิก

นอกจากนี้ หากผู้ใช้ปรับขนาดหน้าจอ รูปภาพหรือเนื้อหาก็ไม่ควรย่อ ครอบตัด หรือทับซ้อนกัน

ความจำเป็นในการทดสอบ GUI

ตอนนี้แนวคิดพื้นฐานของการทดสอบ GUI ก็ชัดเจนแล้ว คำถามสองสามข้อที่จะเกิดขึ้นในใจของคุณคือ

  • ทำไมต้องทดสอบ GUI?
  • จำเป็นจริงหรือ?
  • การทดสอบ Functional และ Logic ของ Application ยังไม่เพียงพอหรือ? แล้วจะเสียเวลาทดสอบ UI ไปทำไม

เพื่อให้ได้คำตอบให้คิดในฐานะผู้ใช้ไม่ใช่ผู้ทดสอบ ผู้ใช้ไม่มีความรู้เกี่ยวกับซอฟต์แวร์/แอปพลิเคชัน XYZ เป็น UI ของแอปพลิเคชันที่ตัดสินใจว่าผู้ใช้จะใช้แอปพลิเคชันต่อไปหรือไม่

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

คุณเช็คอินการทดสอบ GUI อะไรบ้าง?

รายการตรวจสอบต่อไปนี้จะช่วยให้มั่นใจว่ามีการทดสอบ GUI โดยละเอียดในการทดสอบซอฟต์แวร์

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

เทคนิคการทดสอบ GUI

เทคนิคการทดสอบ GUI สามารถแบ่งได้เป็นสามส่วน:

การทดสอบแบบแมนนวล

ภายใต้แนวทางนี้ ผู้ทดสอบจะตรวจสอบหน้าจอกราฟิกด้วยตนเองตามข้อกำหนดที่ระบุไว้ในเอกสารข้อกำหนดทางธุรกิจ

การทดสอบแบบแมนนวล

บันทึกและเล่นซ้ำ

การทดสอบ GUI สามารถทำได้โดยใช้เครื่องมืออัตโนมัติ นี้จะกระทำใน 2 ส่วน ในระหว่างการบันทึก ขั้นตอนการทดสอบจะถูกบันทึกโดยเครื่องมืออัตโนมัติ ในระหว่างการเล่น ขั้นตอนการทดสอบที่บันทึกไว้จะดำเนินการในแอปพลิเคชันที่อยู่ระหว่างการทดสอบ ตัวอย่างของเครื่องมือดังกล่าว – QTP

บันทึกและเล่นซ้ำ

การทดสอบตามแบบจำลอง

การทดสอบตามแบบจำลอง

แบบจำลองคือคำอธิบายเชิงกราฟิกของพฤติกรรมของระบบ ช่วยให้เราเข้าใจและคาดการณ์พฤติกรรมของระบบได้ แบบจำลองช่วยในการสร้างกรณีทดสอบที่มีประสิทธิภาพโดยใช้ข้อกำหนดของระบบ จำเป็นต้องพิจารณาสิ่งต่อไปนี้สำหรับการทดสอบตามแบบจำลอง:

  • สร้างโมเดล
  • กำหนดอินพุตสำหรับโมเดล
  • คำนวณผลลัพธ์ที่คาดหวังสำหรับโมเดล
  • ดำเนินการทดสอบ
  • เปรียบเทียบผลลัพธ์จริงกับผลลัพธ์ที่คาดหวัง
  • การตัดสินใจดำเนินการต่อไปกับแบบจำลอง

เทคนิคการสร้างแบบจำลองบางอย่างที่สามารถรับกรณีทดสอบได้:

  • แผนภูมิ – แสดงสถานะของระบบและตรวจสอบสถานะหลังจากป้อนข้อมูลบางอย่าง
  • ตารางการตัดสินใจ – ตารางที่ใช้ในการกำหนดผลลัพธ์สำหรับแต่ละอินพุตที่ใช้

การทดสอบตามแบบจำลองเป็นเทคนิคที่พัฒนาขึ้นสำหรับการสร้างกรณีทดสอบจากข้อกำหนด- ข้อได้เปรียบหลักเมื่อเปรียบเทียบกับสองวิธีข้างต้น ก็คือสามารถระบุสถานะที่ไม่พึงประสงค์ที่ GUI ของคุณสามารถบรรลุได้

ต่อไปนี้เป็นเครื่องมือโอเพ่นซอร์สที่มีให้ใช้สำหรับดำเนินการทดสอบ UI อัตโนมัติ

สินค้า ภายใต้ใบอนุญาต
AutoHotkey จีพี
Selenium อาปาเช่
ซิคูลี เอ็มไอที
กรอบงานหุ่นยนต์ อาปาเช่
น้ำ BSD
ชุดเครื่องมือ Dojo BSD

ตัวอย่างกรณีทดสอบการทดสอบ GUI

การทดสอบ GUI โดยทั่วไปเกี่ยวข้องกับ

  1. การทดสอบขนาด ตำแหน่ง ความกว้าง ความสูงขององค์ประกอบ
  2. ทดสอบข้อความแสดงข้อผิดพลาดที่กำลังแสดงขึ้นมา
  3. ทดสอบส่วนต่างๆ ของหน้าจอ
  4. การทดสอบแบบอักษรว่าสามารถอ่านได้หรือไม่
  5. การทดสอบหน้าจอในความละเอียดต่าง ๆ ด้วยการซูมเข้าและออก เช่น 640 x 480, 600×800 เป็นต้น
  6. การทดสอบการจัดวางข้อความและองค์ประกอบอื่นๆ เช่น ไอคอน ปุ่ม ฯลฯ อยู่ในตำแหน่งที่เหมาะสมหรือไม่
  7. ทดสอบสีของฟอนต์
  8. ทดสอบสีของข้อความแสดงข้อผิดพลาด ข้อความเตือน
  9. ทดสอบว่าภาพมีความคมชัดดีหรือไม่
  10. ทดสอบการจัดตำแหน่งของภาพ
  11. การทดสอบการสะกดคำ
  12. ผู้ใช้จะต้องไม่หงุดหงิดในขณะที่ใช้อินเทอร์เฟซระบบ
  13. การทดสอบว่าอินเทอร์เฟซนั้นน่าดึงดูดหรือไม่
  14. การทดสอบแถบเลื่อนตามขนาดของหน้า ถ้ามี
  15. การทดสอบสนามที่ถูกปิดใช้งาน ถ้ามี
  16. การทดสอบขนาดของภาพ
  17. การทดสอบหัวข้อว่าจัดตำแหน่งอย่างถูกต้องหรือไม่
  18. การทดสอบสีของไฮเปอร์ลิงก์

การสาธิต: วิธีการทดสอบ GUI

เราจะใช้กรณีทดสอบตัวอย่างบางส่วนสำหรับหน้าจอต่อไปนี้

การสาธิต: วิธีการทดสอบ GUI

ด้านล่างนี้เป็นตัวอย่างกรณีทดสอบ ซึ่งประกอบด้วยสถานการณ์การทดสอบ UI และการใช้งาน

กรณีทดสอบ 01- ตรวจสอบว่ากล่องข้อความที่มีป้ายกำกับ “โฟลเดอร์ต้นทาง” สอดคล้องกันอย่างเหมาะสม

กรณีทดสอบ 02 – ตรวจสอบว่ากล่องข้อความที่มีป้ายกำกับ “แพ็คเกจ” สอดคล้องกันอย่างเหมาะสม

กรณีทดสอบ 03 – ตรวจสอบป้ายกำกับนั้นด้วยชื่อ “หมวดหมู่สินค้า” คือปุ่มที่อยู่ท้ายข้อความBox ด้วยชื่อ “โฟลเดอร์ต้นทาง".

กรณีทดสอบ 04 – ตรวจสอบป้ายกำกับนั้นด้วยชื่อ “หมวดหมู่สินค้า” คือปุ่มที่อยู่ท้ายข้อความBox ด้วยชื่อ “แพ็คเกจ".

กรณีทดสอบ 05 – ตรวจสอบว่ากล่องข้อความที่มีป้ายกำกับ “Name” สอดคล้องกันอย่างเหมาะสม

กรณีทดสอบ 06 – ตรวจสอบว่าฉลาก “ตัวปรับเปลี่ยน” ประกอบด้วยปุ่มตัวเลือก 4 ปุ่มพร้อมชื่อสาธารณะ, ค่าเริ่มต้น, ส่วนตัว, ป้องกัน

กรณีทดสอบ 07 – ตรวจสอบว่าฉลาก “ตัวปรับเปลี่ยน” ประกอบด้วยปุ่มตัวเลือก 4 ปุ่มซึ่งเรียงกันอย่างเหมาะสม

กรณีทดสอบ 08 – ตรวจสอบว่าฉลาก “ซุปเปอร์คลาส” ใต้ป้าย “ตัวปรับเปลี่ยน” ประกอบด้วยเมนูแบบเลื่อนลงซึ่งจะต้องจัดวางอย่างเหมาะสม

กรณีทดสอบ 09 – ตรวจสอบว่าฉลาก “ซุปเปอร์คลาส” ประกอบด้วยปุ่มที่มีป้ายกำกับ “หมวดหมู่สินค้า” ซึ่งจะต้องจัดวางให้เหมาะสม

กรณีทดสอบ 10 – ตรวจสอบว่าการคลิกปุ่มตัวเลือกใดๆ จะต้องเปลี่ยนตัวชี้เมาส์เริ่มต้นเป็นตัวชี้เมาส์มือ

กรณีทดสอบ 11 – ตรวจสอบว่าผู้ใช้ต้องไม่สามารถพิมพ์เมนูแบบเลื่อนลงของ “ซุปเปอร์คลาส".

กรณีทดสอบ 12 – ตรวจสอบว่าจะต้องมีการสร้างข้อผิดพลาดที่เหมาะสม หากมีการเลือกบางสิ่งผิดพลาด

กรณีทดสอบ 13 – ตรวจสอบว่าต้องสร้างข้อผิดพลาดเป็นสีแดงทุกที่ที่จำเป็น

กรณีทดสอบ 14 – ตรวจสอบว่าต้องใช้ป้ายกำกับที่ถูกต้องในข้อความแสดงข้อผิดพลาด

กรณีทดสอบ 15 – ตรวจสอบว่าต้องเลือกปุ่มตัวเลือกเดียวตามค่าเริ่มต้นทุกครั้ง

กรณีทดสอบ 16 – ตรวจสอบว่าปุ่ม TAB ต้องทำงานอย่างถูกต้องขณะข้ามไปบนฟิลด์อื่นถัดจากก่อนหน้า

กรณีทดสอบ 17 – ตรวจสอบว่าทุกหน้าต้องมีชื่อที่ถูกต้อง

กรณีทดสอบ 18 – ตรวจสอบว่าข้อความของหน้าต้องอยู่ในแนวที่ถูกต้อง

กรณีทดสอบ 19 – ตรวจสอบว่าหลังจากการอัปเดตฟิลด์ใดๆ จะต้องแสดงข้อความยืนยันที่ถูกต้อง

กรณีทดสอบ 20 – ตรวจสอบว่าต้องเลือกปุ่มตัวเลือกเพียงปุ่มเดียวและสามารถเลือกช่องกาเครื่องหมายได้มากกว่าหนึ่งช่อง

ความท้าทายในการทดสอบ GUI

ในด้านวิศวกรรมซอฟต์แวร์ปัญหาที่พบบ่อยที่สุดในขณะทำ การทดสอบการถดถอย คือ GUI ของแอปพลิเคชันมีการเปลี่ยนแปลงบ่อยครั้ง เป็นการยากมากที่จะทดสอบและระบุว่าเป็นปัญหาหรือการปรับปรุง ปัญหาจะปรากฏขึ้นเมื่อคุณไม่มีเอกสารใดๆ เกี่ยวกับการเปลี่ยนแปลง GUI

เครื่องมือทดสอบ GUI

ต่อไปนี้เป็นรายการยอดนิยม เครื่องมือทดสอบ GUI :

  1. Selenium
  2. คิวทีพี
  3. Cucumber
  4. ซิลค์เทสต์
  5. สอบเสร็จ
  6. เครื่องทดสอบ GUI ของ Squish

คลิกที่นี่เพื่อเรียนรู้ Selenium, คิวทีพี & Cucumber.

สรุป

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