การทดสอบมือถือ - คู่มือฉบับย่อ

ก่อนที่เราจะเริ่มบทแนะนำจริงมาสนุกกันเถอะ ดูรายการต่อไปนี้ คุณสามารถเชื่อมโยงกับงานสำคัญเหล่านี้ที่เราต้องเผชิญอยู่เสมอในวิถีชีวิตที่วุ่นวายและเร่งรีบในปัจจุบัน -

  • ฉันต้องการจ่ายค่าไฟฟ้าของฉัน

  • ฉันต้องการติดต่อกับผู้จัดการและส่งรายงานอย่างเร่งด่วน

  • ฉันอยากซื้อเสื้อผ้าใหม่ให้ลูก แต่ไม่มีเวลาไปร้าน

  • โอ้ ... มัน 22.00 น. ฉันไปเที่ยวบินช้า รถแท็กซี่ของฉันอยู่ที่ไหน

  • ฉันเคยมาที่เมืองนี้เป็นครั้งแรก ควรจองโรงแรมไหนดี?

ตอนนี้ตอบตัวเอง คุณต้องทำกิจกรรมอะไรบ้างในเสี้ยววินาที คำตอบคือ -

  • สมาร์ทโฟน
  • การเชื่อมต่ออินเทอร์เน็ตและ
  • แอพมือถือสำหรับทำงาน

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

มีอุบัติการณ์หนึ่งที่รู้จักกันดีเกี่ยวกับ Gowalla. ผู้คนหลายล้านชื่นชอบเครือข่ายโซเชียลตามตำแหน่งที่ตั้งนี้ซึ่งเริ่มต้นในปี 2550 และปิดตัวลงในอีกห้าปีต่อมา ปัญหาหลายอย่างทำให้ Gowalla ไม่สามารถเข้าถึงการอุทธรณ์จำนวนมากได้ สาเหตุสำคัญประการหนึ่งที่เกิดขึ้นคือ“ การเช็คอินนั้นไม่เป็นมิตรกับผู้ใช้”

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

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

ระบบปฏิบัติการมือถือ

ตารางต่อไปนี้แสดงภาพรวมของระบบปฏิบัติการมือถือยอดนิยมที่มีอยู่ในตลาด -

ระบบปฏิบัติการ พัฒนาโดย ความนิยม (ต่ำปานกลางสูง) เวอร์ชันล่าสุดที่มี
Android Google Inc. สูง Lollipop, Android 5.0-5.1
iOS บริษัท แอปเปิ้ล สูง iOS 8.X
Blackberry Blackberry Ltd. ต่ำ Blackberry 10.2.1
Windows Microsoft Inc. ปานกลาง Windows 10 Mobile
Symbian มูลนิธิ Symbian ต่ำ ยกเลิกการผลิต

จากการสำรวจทั่วไปการใช้งานระบบปฏิบัติการต่างๆในตลาดสามารถแสดงได้ดังที่แสดงด้านล่าง

อุปกรณ์เคลื่อนที่มักเป็นคอมพิวเตอร์พกพา พวกเขามีตัวแปรมากมายตามลักษณะเช่นมิติทางกายภาพความสามารถของฮาร์ดแวร์และซอฟต์แวร์มีไว้เพื่ออะไรเป็นต้น

ดูตารางต่อไปนี้ มันสร้างความแตกต่างของแท็บเล็ตเครื่องอ่าน e-book และสมาร์ทโฟนตามลักษณะของมัน

อุปกรณ์ แท็บเล็ต ผู้อ่าน E-book สมาร์ทโฟน
มันคืออะไร แท็บเล็ตเป็นอุปกรณ์คอมพิวเตอร์แบบพกพา ต่างจากคอมพิวเตอร์ทั่วไปตรงที่ไม่มีแป้นพิมพ์หรือเมาส์ แต่ทั้งหน้าจอจะไวต่อการสัมผัส เครื่องอ่าน e-book หรือที่เรียกว่า e-reader คล้ายกับคอมพิวเตอร์แท็บเล็ตยกเว้นว่าจะออกแบบมาสำหรับการอ่าน e-book เป็นหลัก (หนังสือดิจิทัลที่ดาวน์โหลดได้) สมาร์ทโฟนเป็นโทรศัพท์มือถือที่มีประสิทธิภาพซึ่งออกแบบมาเพื่อใช้งานแอพพลิเคชั่นที่หลากหลายนอกเหนือจากการให้บริการโทรศัพท์
ใช้สำหรับ งานเกือบทั้งหมดที่เราสามารถทำได้ด้วยคอมพิวเตอร์หรือเดสก์ท็อปแบบเดิม ๆ การอ่าน e-book ท่องเว็บดูวิดีโออ่าน e-book และเล่นเกม
ตัวอย่าง แท็บเล็ต Samsung Amazon Kindle, Barnes & Noble Nook สมาร์ทโฟน Sony, สมาร์ทโฟน Samsung, Apple iPhone

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

เว็บบนมือถือ

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

  • Example- จุดสอน

  • Benefits -

    • เข้าถึงได้ง่าย.

    • การพัฒนาที่ง่าย - การพัฒนาการออกแบบที่ตอบสนองและปรับโครงสร้างเนื้อหาให้แสดงอย่างเหมาะสมบนหน้าจอ / ฮาร์ดแวร์ที่เล็กลงจะทำให้เว็บไซต์บนเดสก์ท็อปเป็นมิตรกับอุปกรณ์เคลื่อนที่

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

    • ไม่จำเป็นต้องติดตั้งเมื่อเทียบกับแอปเนทีฟหรือไฮบริด

  • Downside -

    • เว็บไซต์บนมือถือไม่สามารถใช้คุณสมบัติบางอย่างได้ ตัวอย่างเช่นการเข้าถึงระบบไฟล์และทรัพยากรในเครื่องไม่สามารถใช้ได้ในเว็บไซต์

    • เว็บไซต์ที่มีอยู่จำนวนมากไม่รองรับความสามารถแบบออฟไลน์

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

    • แม้ว่าแอปเนทีฟและแอปไฮบริดจะปรากฏบน App Store และ Google Play แต่แอปพลิเคชันบนเว็บจะไม่ปรากฏ การแจกจ่ายซ้ำจึงไม่สมเหตุสมผล

แอปเนทีฟ

แอปเนทีฟได้รับการพัฒนาสำหรับแพลตฟอร์มเดียวโดยเฉพาะ สามารถติดตั้งผ่านแอพพลิเคชั่นสโตร์ (เช่น Google Play Store หรือ App Store ของ Apple)

  • Example - Whatsapp, Facebook

  • Benefits -

    • แอพที่มาพร้อมเครื่องใช้งานได้บนอุปกรณ์และเข้าถึงผ่านไอคอนบนหน้าจอหลักของอุปกรณ์

    • พวกเขาสามารถใช้ประโยชน์จากคุณสมบัติทั้งหมดของอุปกรณ์ได้อย่างเต็มที่ - สามารถใช้กล้อง, GPS, มาตรความเร่ง, เข็มทิศ, รายชื่อผู้ติดต่อและอื่น ๆ นอกจากนี้ยังสามารถรวมคำสั่งนิ้ว (ทั้งท่าทางระบบปฏิบัติการมาตรฐานหรือท่าทางสัมผัสใหม่และที่กำหนดโดยแอป)

    • แอพที่มาพร้อมเครื่องสามารถใช้ระบบแจ้งเตือนของอุปกรณ์และทำงานแบบออฟไลน์ได้

    • ผู้เผยแพร่สามารถใช้ประโยชน์จากการแจ้งเตือนแบบพุชแจ้งเตือนผู้ใช้ทุกครั้งที่มีการเผยแพร่เนื้อหาใหม่หรือเมื่อจำเป็นต้องให้ความสนใจ

    • Native Apps คงการออกแบบ UI ของแต่ละระบบปฏิบัติการดังนั้นจึงมอบประสบการณ์การใช้งานที่ดีที่สุดแก่ผู้ใช้ ตัวอย่างเช่น Native App สามารถมีส่วนหัวที่จัดชิดซ้ายใน Android และส่วนหัวที่จัดชิดกึ่งกลางใน iOS

    • การแจกจ่ายซ้ำเป็นเรื่องง่ายเนื่องจากพบได้ในร้านแอป

  • Downside -

    • ค่าใช้จ่ายสูงในการสร้างแอป: แอปเนทีฟที่พัฒนาขึ้นสำหรับแพลตฟอร์มหนึ่งจะไม่ทำงานบนแพลตฟอร์มอื่น แอปที่สร้างขึ้นสำหรับ Android จะไม่ทำงานบน iOS เราจำเป็นต้องสร้าง App ที่แตกต่างกันสำหรับ iOS ด้วยเหตุนี้เราจึงต้องดูแลแอพหลายเวอร์ชัน

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

แอปไฮบริด

แอพไฮบริดเป็นวิธีเปิดเผยเนื้อหาจากเว็บไซต์ที่มีอยู่ในรูปแบบแอพ สามารถอธิบายได้ดีว่าเป็นส่วนผสมของ Web App และ Native App

  • Example - อินสตาแกรม Wikipedia

  • Benefits -

    • การพัฒนาแอปไฮบริดนั้นถูกกว่าการพัฒนาแอปแบบเนทีฟ สามารถสร้างขึ้นสำหรับข้ามแพลตฟอร์มเช่นลดต้นทุนสำหรับการพัฒนาแอพ

    • การบำรุงรักษาทำได้ง่ายเนื่องจากไม่มีการบำรุงรักษาหลายเวอร์ชัน

    • สามารถใช้ประโยชน์จากคุณสมบัติบางอย่างที่มีอยู่ในอุปกรณ์

    • สามารถพบได้ใน App Store ซึ่งทำให้การแจกจ่ายเป็นเรื่องง่าย

    • มีเบราว์เซอร์ที่ฝังอยู่ภายในแอปเท่านั้น

  • Downside -

    • กราฟิกไม่ค่อยคุ้นเคยกับระบบปฏิบัติการเมื่อเทียบกับ Native Apps

    • แอพไฮบริดจะช้ากว่าแอพแบบเนทีฟ

การทดสอบอุปกรณ์

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

การทดสอบหน่วย

การทดสอบหน่วยเป็นขั้นตอนการทดสอบเมื่อมีการทดสอบบางส่วนของการพัฒนาอุปกรณ์เคลื่อนที่ซึ่งโดยปกตินักพัฒนา อาจมีการทดสอบฮาร์ดแวร์การทดสอบซอฟต์แวร์และการทดสอบทางกล

การทดสอบโรงงาน

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

  • การทดสอบแอปพลิเคชันมือถือ
  • การทดสอบฮาร์ดแวร์
  • การทดสอบแบตเตอรี่ (การชาร์จ)
  • รับสัญญาณ
  • การทดสอบเครือข่าย
  • การทดสอบโปรโตคอล
  • การทดสอบเกมมือถือ
  • การทดสอบความเข้ากันได้ของซอฟต์แวร์มือถือ

การทดสอบการรับรอง

การทดสอบการรับรองคือการตรวจสอบก่อนที่อุปกรณ์เคลื่อนที่จะออกสู่ตลาด

การทดสอบแอปพลิเคชัน

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

  • การทดสอบการทำงาน
  • การทดสอบในห้องปฏิบัติการ
  • การทดสอบประสิทธิภาพ
  • การทดสอบการรั่วไหลของหน่วยความจำ
  • การทดสอบขัดจังหวะ
  • การทดสอบการใช้งาน
  • การทดสอบการติดตั้ง
  • การทดสอบการรับรอง
  • การทดสอบความปลอดภัย

ประเด็นสำคัญ

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

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

  • ระบบอัตโนมัติเป็นไปได้สำหรับการทดสอบอุปกรณ์เคลื่อนที่และการทดสอบแอปพลิเคชันมือถือ

สิ่งหนึ่งคือการอธิบายตนเองในกรณีของการทดสอบอุปกรณ์เคลื่อนที่ ในการทดสอบอุปกรณ์เคลื่อนที่คุณต้องมีอุปกรณ์เคลื่อนที่ นี่คือการเข้าถึงว่าผลิตภัณฑ์ของเราจะทำงานอย่างไรและมีลักษณะอย่างไรในชุดอุปกรณ์เคลื่อนที่ที่กำหนด

สมมติว่าเรากำลังพัฒนาแอพพลิเคชั่นสำหรับระบบจองตั๋วเครื่องบิน เมื่อผลิตภัณฑ์ได้รับการพัฒนาทั้งหมดโดยเป็นส่วนหนึ่งของการทดสอบอุปกรณ์เคลื่อนที่เราจำเป็นต้องตรวจสอบว่าแอปพลิเคชันทำงานได้ตามที่คาดไว้หรือไม่กับอุปกรณ์ที่ใช้งานส่วนใหญ่เช่นโทรศัพท์ Android, iOS, โทรศัพท์ Blackberry และแท็บเล็ตและไอแพดประเภทอื่น ๆ

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

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

ลองเปรียบเทียบว่าการทดสอบบน Emulator / Simulator แตกต่างจากการทดสอบบนอุปกรณ์จริงอย่างไร -

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

โปรแกรมจำลอง / โปรแกรมจำลองไม่สามารถเลียนแบบคุณสมบัติต่อไปนี้ -

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

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

โปรแกรมจำลอง เครื่องจำลอง
มันเลียนแบบอะไร

ซอฟต์แวร์อุปกรณ์เคลื่อนที่

ฮาร์ดแวร์อุปกรณ์เคลื่อนที่

ระบบปฏิบัติการมือถือ

พฤติกรรมภายในของอุปกรณ์

ไม่เลียนแบบฮาร์ดแวร์

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

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

คำจำกัดความง่ายๆของการทดสอบแอปพลิเคชันมือถือจะเป็นดังนี้ "Mobile application testing เป็นกระบวนการที่ไฟล์ application softwareที่พัฒนาขึ้นสำหรับอุปกรณ์พกพาแบบพกพาได้รับการทดสอบการทำงานการใช้งานและความสม่ำเสมอ การทดสอบแอปพลิเคชันมือถืออาจเป็นการทดสอบแบบอัตโนมัติหรือแบบแมนนวลก็ได้”

Note - เพื่อความเข้าใจที่ดีขึ้นเราจะถือว่าเรากำลังทดสอบแอปพลิเคชันมือถือสำหรับระบบจองตั๋วเครื่องบินออนไลน์

การทดสอบการทำงาน

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

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่ามีการแสดงความพร้อมของเที่ยวบินสำหรับปลายทางต้นทางที่เลือกในวันที่เลือกเท่านั้น

  • ตรวจสอบว่าวันที่ที่ผ่านมาไม่รวมอยู่ในผลการค้นหา

การทดสอบความเข้ากันได้

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

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

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าการค้นหาเที่ยวบินดำเนินการสำเร็จด้วยอุปกรณ์ Android
  • ตรวจสอบว่าการค้นหาเที่ยวบินดำเนินการสำเร็จสำหรับ Apple iPad

การทดสอบการแปล

ปัจจุบันแอปส่วนใหญ่ได้รับการออกแบบมาเพื่อการใช้งานทั่วโลกและเป็นสิ่งสำคัญมากในการดูแลเส้นทางภูมิภาคเช่นภาษาเขตเวลา ฯลฯ สิ่งสำคัญคือต้องตรวจสอบการทำงานของแอปเมื่อมีคนเปลี่ยนเขตเวลา ต้องคำนึงว่าบางครั้งการออกแบบของตะวันตกอาจไม่ได้ผลกับผู้ชมจากประเทศทางตะวันออกหรือในทางกลับกัน

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าไม่มีปัญหา UI หรือการตัดข้อมูลเมื่อเราใช้แอพมือถือกับภาษาอื่น (หรือพูดไม่ใช่ภาษาอังกฤษ)

  • ตรวจสอบว่าการเปลี่ยนแปลงโซนเวลาได้รับการจัดการอย่างดีสำหรับแอปพลิเคชันมือถือของคุณ

การทดสอบในห้องปฏิบัติการ

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

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าไม่มีข้อผิดพลาดในขณะที่ลูกค้าสนทนาด้วยเสียงกับเจ้าหน้าที่ฝ่ายสนับสนุน

การทดสอบประสิทธิภาพ

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

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าการตรวจสอบเที่ยวบินที่มีอยู่นั้นใช้เวลาเพียงพอสมควร

  • ตรวจสอบว่าในขณะที่กำลังตรวจสอบความพร้อมของเที่ยวบินโทรศัพท์มือถือจะทำงานได้ตามปกติและไม่ค้าง

การทดสอบความเครียด

การทดสอบความเครียดเป็นสิ่งที่ต้องหาข้อยกเว้นแฮงค์และการหยุดชะงักที่อาจไม่มีใครสังเกตเห็นระหว่างการทดสอบการทำงานและส่วนต่อประสานกับผู้ใช้ นี่คือรายการเกณฑ์บางส่วนสำหรับการทดสอบความเครียด -

  • โหลดแอปพลิเคชันของคุณด้วยข้อมูลให้มากที่สุดเพื่อพยายามไปถึงจุดแตกหัก

  • ดำเนินการเดิมซ้ำแล้วซ้ำเล่า

  • ดำเนินการซ้ำ ๆ ด้วยความเร็วที่แตกต่างกัน - เร็วมากหรือช้ามาก

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

  • ส่งการแตะหน้าจอและการกดแป้นพิมพ์แบบสุ่มไปยังแอปพลิเคชันของคุณ

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

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบผู้ใช้ 1,000 คนกำลังเข้าถึงแอพมือถือเพื่อค้นหาเที่ยวบินภายในประเทศ
  • ตรวจสอบผู้ใช้ 1,000 คนกำลังเข้าถึงแอพมือถือเพื่อค้นหาเที่ยวบินภายในประเทศ

การทดสอบความปลอดภัย

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

วิธีหนึ่งในการทดสอบสถานการณ์ที่เกี่ยวข้องกับความปลอดภัยคือการกำหนดเส้นทางข้อมูลมือถือของคุณผ่านพร็อกซีเซิร์ฟเวอร์เช่น OWASP Zed Attack Proxy และมองหาช่องโหว่

ตัวอย่างสถานการณ์ทดสอบ -

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

  • ตรวจสอบว่าเซสชันหมดอายุโดยอัตโนมัติหากยังคงไม่มีการใช้งานนานกว่า 15 นาที

การทดสอบการรั่วไหลของหน่วยความจำ

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

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

ตัวอย่างสถานการณ์ทดสอบ -

  • ทำการตรวจสอบความพร้อมของเที่ยวบินสิบครั้งและจดบันทึกการใช้หน่วยความจำที่เพิ่มขึ้นสำหรับเช็คแต่ละครั้ง

  • ให้แอปพลิเคชันทำงานเป็นเวลาสิบนาทีและสังเกตว่าการใช้งานหน่วยความจำยังคงมีเสถียรภาพหรือไม่

การทดสอบการใช้พลังงาน

มีแบตเตอรี่หลายประเภทที่ใช้ในอุปกรณ์พกพาที่แตกต่างกัน (เช่นนิกเกิลแคดเมียม / ลิเธียมไอออน / นิกเกิลเมทัลไฮบริด) ในขณะที่เรามุ่งเน้นไปที่การทดสอบการใช้พลังงานเราจำเป็นต้องวัดสถานะของแบตเตอรี่ในแต่ละระดับกิจกรรม มันจะทำให้เราเข้าใจการใช้พลังงานของแต่ละแอพพลิเคชั่นได้ดีขึ้น

การทดสอบการใช้พลังงานสามารถทำได้ด้วยตนเอง นอกจากนี้ยังมีเครื่องมือฟรีบางอย่างในตลาดเช่น Trepn Profiler, Power Tutor และ Nokia Energy Profiler นี่คือแอพพลิเคชั่นที่สามารถแสดงการใช้พลังงานแบบเรียลไทม์บนสมาร์ทโฟนหรือแท็บเล็ต

ตัวอย่างสถานการณ์ทดสอบ -

  • ใช้แอพมือถือเพื่อค้นหาความพร้อมของเที่ยวบินและตรวจสอบการใช้พลังงานว่ายังน้อยอยู่

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

การทดสอบขัดจังหวะ

ขณะที่แอปพลิเคชันทำงานอยู่อาจมีการขัดจังหวะหลายอย่างเช่นสายเรียกเข้าหรือเครือข่ายขาดหายและการกู้คืน สิ่งนี้สามารถแยกแยะได้อีกครั้งสำหรับ -

  • SMS และ MMS ขาเข้าและขาออก
  • สายเรียกเข้าและโทรออก
  • การแจ้งเตือนที่เข้ามา
  • การถอดแบตเตอรี่
  • การใส่และถอดสายเคเบิลสำหรับการถ่ายโอนข้อมูล

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าการตรวจสอบความพร้อมของเที่ยวบินหยุดชั่วคราวและกลับมาดำเนินการต่อหลังจากได้รับสายเรียกเข้า

  • ตรวจสอบว่าผู้ใช้สามารถปฏิเสธสายในขณะที่ใช้แอพและกลับมาใช้แอพเดิมอีกครั้งหลังจากนั้น

การทดสอบการใช้งาน

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

  • Efficiency - ความถูกต้องและสมบูรณ์ที่ผู้ใช้ระบุสามารถบรรลุเป้าหมายที่ระบุในสภาพแวดล้อมเฉพาะ

  • Effectiveness - ทรัพยากรที่ใช้ไปเกี่ยวข้องกับความถูกต้องและความสมบูรณ์ของเป้าหมายที่ทำได้

  • Satisfaction - ความสะดวกสบายและความสามารถในการยอมรับของระบบงานต่อผู้ใช้และผู้อื่นที่ได้รับผลกระทบจากการใช้งาน

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

ตัวอย่างสถานการณ์ทดสอบ -

  • การตรวจสอบความพร้อมของเที่ยวบินควรอยู่ในโฮมเพจ
  • ไม่ควรแสดงโฆษณาที่ได้รับการสนับสนุนตรงกลางเนื้อหา

การทดสอบการติดตั้ง

การทดสอบการติดตั้งเป็นการยืนยันว่าขั้นตอนการติดตั้งเป็นไปอย่างราบรื่นโดยที่ผู้ใช้ไม่ต้องเผชิญกับปัญหาใด ๆ

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่ากระบวนการติดตั้งราบรื่นและใช้เวลาไม่นาน
  • ตรวจสอบว่าการติดตั้งสำเร็จผ่านทาง App Store ขององค์กร

การทดสอบการถอนการติดตั้ง

ข้อมูลพื้นฐานของการทดสอบการถอนการติดตั้งสามารถสรุปได้ในบรรทัดเดียวว่า“ การถอนการติดตั้งควรกวาดข้อมูลที่เกี่ยวข้องกับแอปออกไปในครั้งเดียว”

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าไฟล์ที่เกี่ยวข้องกับแอปพลิเคชันทั้งหมดถูกลบออกสำเร็จหลังจากถอนการติดตั้ง

  • หากเป็นแอพที่เก็บไฟล์มีเดีย (เช่น Whatsapp หรือ Facebook) ให้เก็บไฟล์ไว้แม้ว่าจะถอนการติดตั้งแอพแล้วก็ตาม

อัปเดตการทดสอบ

เราต้องระมัดระวังอย่างมากเกี่ยวกับการอัปเดตแอปบนอุปกรณ์เคลื่อนที่ ผู้คนมักบ่นว่าแอปพลิเคชันทำงานได้ไม่น่าพอใจหลังจากการอัปเดต ดังนั้นจึงเป็นเรื่องสำคัญมากที่ภายใต้การทดสอบการอัปเดตเรามีคุณสมบัติที่แอปจะทำงานได้เหมือนเดิม โดยสรุปไม่ควรทำลายอะไร การอัปเดตแอปพลิเคชันมือถือสามารถทำได้สองวิธี -Automatic update และ Manual update.

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าแอปพลิเคชันทำงานได้สำเร็จหลังจากอัปเดตอัตโนมัติ
  • ตรวจสอบว่าความคืบหน้าของการอัปเดตแสดงอย่างถูกต้อง

การทดสอบการรับรอง

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

ตัวอย่างสถานการณ์ทดสอบ -

  • ตรวจสอบว่าแอปพลิเคชันเป็นไปตามนโยบายของโทรศัพท์ iOS เมื่อติดตั้งบน iPhone

  • ตรวจสอบว่าแอปพลิเคชันเป็นไปตามนโยบายของโทรศัพท์ Android เมื่อติดตั้งบน Android

สมมติว่าเรากำลังใช้แอปพลิเคชันบนมือถือและที่น่าสนใจคือคุณประสบกับสถานการณ์ต่อไปนี้ -

  • การจัดตำแหน่งปุ่มขาดหายไป
  • ข้อความกำลังถูกตัดออก
  • การควบคุมปฏิทินกำลังถูกตัดออก

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

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

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

มาพูดคุยเพิ่มเติมเกี่ยวกับพื้นฐานของการทดสอบ UI มือถือ

การวางแนวหน้าจอ / ความละเอียด

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

หากคุณมีเค้าโครงหลายคอลัมน์คุณอาจต้องการตรวจสอบว่าคอลัมน์ของคุณจัดแนวอย่างถูกต้องและยังสามารถดูได้เมื่อผู้เยี่ยมชมของคุณมีความละเอียดต่ำกว่า สิ่งสำคัญคือต้องทราบความละเอียดหน้าจอมาตรฐาน -

  • 640 × 480
  • 800 × 600
  • 1024 × 768
  • 1280 × 800
  • 1366 × 768
  • 1400 × 900
  • 1680 × 1050

เครื่องมือที่มีอยู่

มีเครื่องมือไม่กี่อย่างในตลาดที่ทำให้การทดสอบ UI บนอุปกรณ์เคลื่อนที่ราบรื่นและง่ายขึ้น ตัวอย่างเช่น -

  • ส่วนขยาย Google Chrome
  • Screenfly
  • กองซ้อนเบราว์เซอร์

มาทำความเข้าใจเพิ่มเติมเกี่ยวกับเครื่องมือเหล่านี้และประโยชน์ของเครื่องมือเหล่านี้กัน

ส่วนขยาย Google Chrome

เป็นคุณสมบัติฟรีที่มีให้ในเว็บเบราว์เซอร์ Google chrome เราได้ให้คำอธิบายทีละขั้นตอนเกี่ยวกับวิธีทดสอบเว็บบนมือถือด้วย Google Chrome Extension -

Step 1 - เปิดเว็บไซต์ภายใต้การทดสอบใน“ เว็บเบราว์เซอร์ Google Chrome”

Step 2- กด F12 จะเปิดหน้าต่าง Developer tool ดังที่แสดงในภาพหน้าจอต่อไปนี้

Step 3- คลิกไอคอนอุปกรณ์เคลื่อนที่เช่น อ้างอิงภาพหน้าจอต่อไปนี้

Step 4- เลือกอุปกรณ์มือถือที่คุณต้องการทดสอบเว็บไซต์ คุณสามารถเลือกอุปกรณ์ต่างๆที่มีเพื่อทำการยืนยัน UI

Screenfly

Screenfly เป็นเครื่องมือฟรีและใช้งานง่าย ในการใช้งานคุณเพียงแค่พิมพ์Quirktoolsในเว็บเบราว์เซอร์ของคุณ คุณจะเห็นหน้าจอต่อไปนี้

เข้าสู่เว็บไซต์ภายใต้การทดสอบและคลิก Go. เลือกอุปกรณ์เคลื่อนที่ที่คุณต้องการดูเว็บไซต์

BrowserStack

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

หน้าจอสัมผัส

Multi-Touch กับหน้าจอสัมผัสเดียว

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

Long Touch กับ Short Touch

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

ขนาดปุ่มและตำแหน่ง

ตรวจสอบให้แน่ใจว่าปุ่มและไอคอนมีขนาดใหญ่เพียงพอและห่างจากขอบหน้าจอมากพอที่จะคลิกได้อย่างง่ายดายด้วยปลายนิ้วขนาดใหญ่

ซอฟต์แอนด์ฮาร์ดคีย์

คีย์บอร์ดนุ่ม

บ่อยครั้งที่มีกรณีพิเศษและกรณีพิเศษต่างๆที่มีความสำคัญต่อผู้ใช้ปลายทาง

  • แป้นพิมพ์อ่อนจะปรากฏขึ้นโดยอัตโนมัติหรือไม่หากการกระทำหลักของผู้ใช้คือการป้อนข้อความ

  • ชั้นแรกของซอฟต์คีย์บอร์ดมีปุ่มลัด "@" และ ".com" หรือไม่หากช่องที่ไฮไลต์มีไว้สำหรับป้อนที่อยู่อีเมล

  • สามารถปิดซอฟต์คีย์บอร์ดและแสดงใหม่ได้อย่างง่ายดายหรือไม่?

  • แป้นพิมพ์แบบนิ่มและแบบแข็งสามารถใช้แทนกันได้หรือไม่ (หากอุปกรณ์มีทั้งสองอย่าง)

ฮาร์ดคีย์

อย่าลืมรวมการทดสอบมากมายเกี่ยวกับการใช้ฮาร์ดคีย์ที่มีอยู่ของอุปกรณ์เช่น Start, Home, Menu และ Back สิ่งเหล่านี้ควรโต้ตอบกับแอปพลิเคชันของคุณเช่นเดียวกับวิธีที่พวกเขาโต้ตอบกับแอปพลิเคชันดั้งเดิมของอุปกรณ์

Trackballs ล้อติดตามและทัชแพด

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

การทดสอบอุปกรณ์เคลื่อนที่เช่นโทรศัพท์แท็บเล็ตและ eReaders ต้องใช้อุปกรณ์และวิธีการพิเศษ เนื่องจากซอฟต์แวร์จับภาพหน้าจอเดสก์ท็อปแบบเดิมไม่สามารถจับภาพการโต้ตอบแบบสัมผัสได้อย่างเพียงพอผู้ปฏิบัติงานด้านความสามารถในการใช้งานจึงใช้กล้องที่วางกลยุทธ์เพื่อบันทึกการโต้ตอบทดสอบการใช้งานบนอุปกรณ์เคลื่อนที่เหล่านี้

กำลังเตรียมทำการทดสอบอุปกรณ์เคลื่อนที่

วิธีการและอุปกรณ์เพื่ออำนวยความสะดวกในการทดสอบการใช้งานบนโทรศัพท์แท็บเล็ตและ eReaders ยังคงพัฒนาต่อไป เมื่อวางแผนการทดสอบอุปกรณ์เคลื่อนที่คุณควรคำนึงถึงประเด็นต่อไปนี้ -

  • Your timeframe and budget. การมีความเข้าใจที่ดีเกี่ยวกับกรอบเวลาและงบประมาณจะช่วยให้คุณตัดสินใจได้ว่ากระบวนการและอุปกรณ์ใดจะทำงานได้ดีที่สุดตามความต้องการของคุณ

  • The physical setup of the space and how you will capture the test. ซึ่งอาจมีตั้งแต่การจัดเรียงที่มีความเที่ยงตรงต่ำไปจนถึงการใช้แพลตฟอร์มเฉพาะและอุปกรณ์กล้องและ / หรืออาจใช้ซอฟต์แวร์ติดตามดวงตา

  • Your target audience and devices.ใช้การวิเคราะห์เว็บเพื่อตรวจสอบจำนวนผู้ใช้อุปกรณ์เคลื่อนที่ที่เยี่ยมชมไซต์พวกเขาใช้อุปกรณ์ใดและระบบปฏิบัติการของพวกเขา การทำความเข้าใจข้อมูลนี้จะช่วยให้คุณทราบว่าควรทดสอบอุปกรณ์ใด

สิ่งสำคัญอีกประการที่ต้องครอบคลุมหลังการวางแผนการทดสอบคือ test device management. ในองค์กรขนาดใหญ่การจัดการการทดสอบอุปกรณ์เคลื่อนที่จำเป็นต้องมีวิธีที่ชาญฉลาดในการรักษาความปลอดภัยข้อมูลที่เป็นความลับขององค์กร ในการดำเนินการนี้คุณจะต้องมีซอฟต์แวร์ความปลอดภัย ในส่วนต่อไปนี้เราจะทำความเข้าใจเพิ่มเติมเกี่ยวกับเครื่องมือการจัดการอุปกรณ์

เครื่องมือการจัดการอุปกรณ์

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

MDM มักจะรวมกับบริการและเครื่องมือด้านความปลอดภัยเพิ่มเติมเช่นการจัดการแอปพลิเคชันมือถือเพื่อสร้างอุปกรณ์เคลื่อนที่ที่สมบูรณ์และโซลูชันการจัดการความปลอดภัยขององค์กร

มีเครื่องมือมากมายในตลาดที่จะทำงานนี้ ตารางต่อไปนี้แสดงภาพรวมของเครื่องมือยอดนิยมและคุณลักษณะต่างๆ

ผลิตภัณฑ์ BlackBerry MDM Citrix MDM MDM ของ Dell IBM MDM MobileIron MDM โซทีเอ็มดี
Android 2.3+ ใช่ ใช่ ใช่ 2.3 ถึงปัจจุบัน ใช่
iOS 5.0+ ใช่ ใช่ ใช่ 4.0 ถึงปัจจุบัน ใช่
Windows Phone ไม่ใช่สำหรับ BES10 (WP 8+ สำหรับ BES12) ใช่ ใช่ ใช่ 7 ถึงปัจจุบัน ใช่
BlackBerry ใช่ BBOS, BlackBerry 10 ใช่ ไม่ ใช่ 10 (ผ่าน ActiveSync) ไม่
Symbian ไม่ ใช่ ไม่ ใช่ ไม่ ไม่
ระบบปฏิบัติการ Windows ไม่ ใช่ ใช่ ใช่ 8.1 RT / Pro ไม่
Mac OSX ไม่ เร็ว ๆ นี้ ใช่ ใช่ สิงโตสิงโตภูเขา ใช่
อื่น ๆ ไม่ Windows Mobile ไม่มี Office 365, Gmail, Lotus ไม่มี Windows Mobile, CE, ฝังตัว
กำหนดค่า / ปิดใช้งาน WiFi ใช่ ใช่ ใช่ ใช่ ใช่ ใช่
การเข้ารหัสอุปกรณ์ ใช่ ใช่ ใช่ขึ้นอยู่กับประเภทอุปกรณ์ ใช่ ใช่ ใช่
การเข้ารหัสอีเมล ใช่ ใช่ ใช่ขึ้นอยู่กับประเภทอุปกรณ์ ใช่ ใช่ ใช่
การพิสูจน์ตัวตนแบบหลายปัจจัย ใช่ ใช่ ไม่ ใช่ ใช่ ใช่
การตรวจจับมัลแวร์ ไม่ ไม่ ไม่ ใช่ ใช่กับการรวมพันธมิตร ใช่
ไฟร์วอลล์ ใช่ ไม่ ไม่ ใช่ ใช่กับการรวมพันธมิตร ใช่
แยกข้อมูลผู้ใช้ออกจากข้อมูลองค์กร ใช่ ใช่ ใช่ ใช่ ใช่ ใช่

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

ส่วนประกอบฮาร์ดแวร์

หากคุณใช้โทรศัพท์มือถือส่วนใหญ่จะประกอบด้วยส่วนต่างๆดังต่อไปนี้

แผงวงจร

ถือได้ว่าเป็นสมองของโทรศัพท์ที่ควบคุมกิจกรรมทั้งหมดของโทรศัพท์

หน้าจอสัมผัส

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

หน้าจอสัมผัสยอดนิยมมีสองประเภท -

  • Resistive Touchscreen- มีสองชั้น (คั่นด้วยช่องว่างขนาดเล็ก) ซึ่งสร้างภาพซ้อนทับบนหน้าจอ เมื่อวางนิ้วลงบนจุดใด ๆ บนหน้าจอทั้งสองจะสร้างรายชื่อติดต่อและพิกัด สิ่งเหล่านี้มีราคาไม่แพงนักและสามารถพบได้ในโทรศัพท์ราคาประหยัดส่วนใหญ่ ข้อเสียคือต้องใช้แรงกดจำนวนหนึ่งเพื่อลงทะเบียนการสัมผัส เมื่อเวลาผ่านไปความเสียหายระดับหนึ่งจะเกิดขึ้นกับหน้าจอ

  • Capacitive Touchscreen- มีหน้าจอทั้งหมดเคลือบด้วยสาร capacitive ซึ่งเก็บประจุไฟฟ้าไว้จำนวนหนึ่ง เมื่อวางวัตถุที่เป็นตัวนำไฟฟ้าเช่นนิ้วลงบนหน้าจอจะมีการเปลี่ยนแปลงความจุในจุดนั้นและทำให้ได้พิกัด หน้าจอสัมผัสแบบ Capacitive ไม่ตอบสนองได้ดีในสภาพอากาศหนาวเย็นซึ่งนิ้วของมนุษย์ไม่ได้ทำให้ความจุเปลี่ยนแปลงดังนั้นจึงแนะนำให้ใช้สไตลัสสำหรับสถานการณ์ดังกล่าว จากนั้นก็มีmulti-touch touchscreensซึ่งแทบทุกนิ้วสามารถระบุได้อย่างแม่นยำ สิ่งนี้นำไปสู่การเพิ่มจำนวนท่าทางที่สามารถทำได้บนหน้าจอสัมผัส

การ์ดหน่วยความจำ

การ์ดหน่วยความจำมีหลายขนาดและความจุ ใช้กันอย่างแพร่หลายในฐานะอุปกรณ์จัดเก็บข้อมูลเพื่อจัดเก็บข้อมูลดิจิทัล

ซิมการ์ด

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

แบตเตอรี่

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

UDID สำหรับ iOS

iPhone หรือ iPod Touch แต่ละเครื่องมี Unique Device Identifier (UDID) ซึ่งเป็นลำดับตัวอักษรและตัวเลข 40 ตัวที่เฉพาะเจาะจงสำหรับอุปกรณ์ของคุณ เหมือนกับหมายเลขซีเรียล แต่เดายากกว่ามาก จะมีหน้าตาประมาณนี้ - 2b6f0cc904d137be2e1730235f5664094b831186

จะหา UUID ของคุณได้อย่างไร?

  • เชื่อมต่ออุปกรณ์ iOS ของคุณกับคอมพิวเตอร์ของคุณ
  • เปิด iTunes
  • ใน iTunes ให้คลิกที่ชื่ออุปกรณ์ภายใต้“ อุปกรณ์” ในคอลัมน์ทางด้านซ้าย
  • คลิกหนึ่งครั้งที่หมายเลขประจำเครื่องของอุปกรณ์ในส่วนหลักของหน้าต่าง
  • จากนั้นหมายเลขซีเรียลควรเปลี่ยนเป็น UDID ของอุปกรณ์

โปรไฟล์การจัดเตรียมสำหรับ iOS

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

จะสร้างโปรไฟล์การจัดเตรียมสำหรับ iOS ได้อย่างไร

  • เรียกใช้ Google Chrome, Mozilla Firefox หรือ Safari

  • ใน iOS Dev. ตรงกลางคลิกใบรับรองตัวระบุและโปรไฟล์

  • ในแผงแอป iOS คลิกการจัดเตรียมโปรไฟล์

  • คลิก +

  • เลือก iOS App Development แล้วคลิกดำเนินการต่อ

  • เลือกรหัสแอปเพื่อเชื่อมโยงกับโปรไฟล์การจัดสรรแล้วคลิกดำเนินการต่อ

  • หากต้องการใช้โปรไฟล์การจัดเตรียมการพัฒนาหนึ่งในหลาย ๆ แอปให้เลือกรหัสแอปสัญลักษณ์แทนหากมี

  • เลือกใบรับรองอย่างน้อยหนึ่งรายการสำหรับการพัฒนาเพื่อรวมไว้ในโปรไฟล์การจัดสรรแล้วคลิกดำเนินการต่อ

  • แสดงเฉพาะใบรับรองสำหรับการพัฒนาเท่านั้น

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

  • ป้อนชื่อสำหรับโปรไฟล์แล้วคลิกสร้าง

  • (ไม่บังคับ) คลิกดาวน์โหลดเพื่อดาวน์โหลดโปรไฟล์การจัดสรร

จะเพิ่มโปรไฟล์การจัดเตรียมของคุณใน AppBuilder ได้อย่างไร?

  • คลิกไอคอนฟันเฟืองและเลือกตัวเลือก

  • เลือก iOS → Provisioning Profiles

  • คลิกนำเข้า

  • เรียกดูตำแหน่งที่จัดเก็บไฟล์การจัดเตรียมอุปกรณ์เคลื่อนที่สำหรับโปรไฟล์การจัดเตรียมของคุณเลือกและยืนยันการนำเข้า

ตัวเลือกและการตั้งค่าอุปกรณ์

คุณสามารถระบุค่ากำหนดอุปกรณ์ (มือถือหรือทั้งหมด) สำหรับข้อความการค้นหาแบบไดนามิกรูปภาพหรือโฆษณาแบบดิสเพลย์

หากกลุ่มโฆษณามีทั้งโฆษณาที่เหมาะกับมือถือและโฆษณาปกติโฆษณาที่เหมาะกับอุปกรณ์เคลื่อนที่เท่านั้นที่จะแสดงบนอุปกรณ์เคลื่อนที่และมีเพียงโฆษณาปกติเท่านั้นที่แสดงบนคอมพิวเตอร์และแท็บเล็ต

ในรายการประเภทเลือกโฆษณาและส่วนขยายและเลือกประเภทโฆษณาที่คุณต้องการอัปเดต เลือกโฆษณาอย่างน้อยหนึ่งรายการ ภายใต้ "ค่ากำหนดอุปกรณ์" บนแผงแก้ไขเลือกอุปกรณ์เคลื่อนที่หรือทั้งหมด

มาดูรายละเอียดของการทดสอบประเภทต่างๆที่เราสามารถทำได้บนอุปกรณ์มือถือ

เชื่อมต่อเครือข่าย

ตารางต่อไปนี้แสดงรายการตรวจสอบการทดสอบการเชื่อมต่อเครือข่ายที่สามารถทำได้สำหรับอุปกรณ์มือถือ

ซีเนียร์ คำอธิบาย
1 แอปทำงานตามข้อกำหนดหากเชื่อมต่ออินเทอร์เน็ตผ่าน Wi-Fi หรือไม่
2 แอปทำงานตามข้อกำหนดหากเชื่อมต่ออินเทอร์เน็ตผ่าน 3G หรือไม่
3 แอปทำงานตามข้อกำหนดหากเชื่อมต่ออินเทอร์เน็ตผ่าน 2G หรือไม่
4 แอปทำงานตามข้อกำหนดของแอปอยู่นอกเครือข่ายหรือไม่
5 แอปจะทำงานต่อเมื่อกลับเข้าสู่เครือข่ายจากภายนอกเครือข่ายหรือไม่
6 ธุรกรรมการอัพเดตได้รับการประมวลผลอย่างถูกต้องหลังจากสร้างการเชื่อมต่อใหม่
7 แอปยังทำงานได้อย่างถูกต้องเมื่อเชื่อมต่ออินเทอร์เน็ตผ่านมือถือหรือเชื่อมต่อกับอุปกรณ์อื่นหรือไม่
8 จะเกิดอะไรขึ้นหากแอปสลับระหว่างเครือข่าย (Wi-Fi, 3G, 2G)
9 แอปใช้พอร์ตเครือข่ายมาตรฐาน (เมล: 25, 143, 465, 993 หรือ 995 HTTP: 80 หรือ 443 SFTP: 22) เพื่อเชื่อมต่อกับบริการระยะไกลเนื่องจากผู้ให้บริการบางรายบล็อกพอร์ตบางพอร์ต

การโต้ตอบการ์ด SD

ตารางต่อไปนี้แสดงรายการตรวจสอบการตรวจสอบฟังก์ชันรอบปฐมทัศน์ของการโต้ตอบการ์ด SD กับโทรศัพท์มือถือ

ซีเนียร์ คำอธิบาย
1 สามารถติดตั้งแอปในเครื่องได้หรือไม่?
2

แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากมีสายเรียกเข้า

3 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากมี SMS เข้ามา
4 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากเชื่อมต่ออุปกรณ์ชาร์จ
5 แอพทำงานตามที่ออกแบบ / ต้องการหรือไม่หากถอดสายชาร์จ
6 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์เข้าสู่โหมดสลีป
7 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์กลับสู่โหมดสลีป
8 แอปทำงานตามที่ออกแบบไว้ / ต้องการหรือไม่หากอุปกรณ์ดำเนินการต่อจากหน้าจอล็อก
9 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์เอียง
10 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์สั่น
11 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากข้อความในเครื่องมาจากแอปอื่น (นึกถึงปฏิทินเตือนความจำสิ่งที่ต้องทำ ฯลฯ )
12 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากข้อความพุชมาจากแอปอื่น (นึกถึง: การกล่าวถึง Twitter ข้อความ Whatsapp คำเชิญคำเชิญ ฯลฯ )
13 แอปโต้ตอบกับเซ็นเซอร์ GPS อย่างถูกต้อง (เปิด / ปิดดึงข้อมูล GPS) หรือไม่
14 การทำงานของปุ่มหรือปุ่มทั้งหมดบนอุปกรณ์ถูกกำหนดไว้สำหรับแอพนี้หรือไม่
15 ตรวจสอบว่าปุ่มหรือคีย์ที่ไม่มีฟังก์ชันกำหนดไว้ไม่มีพฤติกรรมที่ไม่คาดคิดในแอปเมื่อเปิดใช้งาน
16 ในกรณีที่มีปุ่ม "ย้อนกลับ" ที่แท้จริงบนอุปกรณ์ปุ่ม "ย้อนกลับ" จะนำผู้ใช้ไปยังหน้าจอก่อนหน้าหรือไม่
17 ในกรณีที่มีปุ่ม“ เมนู” จริงบนอุปกรณ์ปุ่มเมนูจะแสดงเมนูของแอปหรือไม่
18 ในกรณีที่มีปุ่ม "หน้าแรก" ที่แท้จริงในอุปกรณ์ปุ่มโฮมจะพาผู้ใช้กลับไปที่หน้าจอหลักของอุปกรณ์หรือไม่
19 ในกรณีที่มีปุ่ม "ค้นหา" ที่แท้จริงบนอุปกรณ์สิ่งนี้จะช่วยให้ผู้ใช้เข้าถึงรูปแบบการค้นหาบางรูปแบบภายในแอปได้หรือไม่
20 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากข้อความ "แบตเตอรี่ต่ำ" ถูกดัน
21 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากปิดเสียงบนอุปกรณ์
22 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์อยู่ในโหมดเครื่องบิน
23 สามารถถอนการติดตั้งแอปออกจากอุปกรณ์ได้หรือไม่?
24 แอปพลิเคชันทำงานตามที่คาดไว้หลังจากติดตั้งใหม่หรือไม่?
25 แอพหาได้จากแอพสโตร์หรือไม่? (ตรวจสอบหลังเผยแพร่)
26 แอพสามารถเปลี่ยนไปใช้แอพต่างๆบนอุปกรณ์ผ่านการทำงานหลายอย่างพร้อมกันตามที่ออกแบบ / ต้องการได้หรือไม่?
27 ตำแหน่ง (ปุ่ม) ของหน้าจอสัมผัสทั้งหมดทำงานเมื่อใช้ตัวป้องกันหน้าจอ

การทดสอบบลูทู ธ

อุปกรณ์บลูทู ธ สามารถสื่อสารได้ภายในรัศมี 10 เมตรเท่านั้น อุปกรณ์ดังกล่าวอาจเป็นคีย์บอร์ดเมาส์หูฟังไร้สายเป็นต้นตารางต่อไปนี้แสดงรายการตรวจสอบการทดสอบ Bluetooth ที่สามารถทำได้ -

ซีเนียร์ คำอธิบาย
1 ผู้ใช้สามารถค้นหาอุปกรณ์ที่มีอยู่ทั้งหมดในช่วง
2 สามารถส่งทั้งข้อมูลและเสียงผ่านการใช้เครือข่ายระยะสั้น
3 สามารถรับทั้งข้อมูลและการส่งสัญญาณเสียงผ่านการใช้เครือข่ายระยะสั้น
4 ผู้ใช้สามารถยกเลิกการเชื่อมต่อได้ตลอดเวลา
5 ในขณะที่ปิดบลูทู ธ ขอให้ยกเลิกการเชื่อมต่อปัจจุบัน
6 ช่วงสูงสุดของบลูทู ธ คือ 10 เมตร
7 ผ่านโทรศัพท์มือถือคุณสามารถส่งรูปภาพวิดีโอแลกเปลี่ยนนามบัตรและถ่ายโอนไฟล์ไปยังพีซีของคุณได้
8 (จับคู่อุปกรณ์แล้ว) นี่คือข้อความที่ใช้เพื่อยืนยันว่าผู้ใช้จับคู่อุปกรณ์บลูทู ธ สองเครื่องสำเร็จแล้ว
9 โหมดไม่สามารถค้นพบอุปกรณ์ที่จะไม่ตอบสนองต่อการร้องขอการค้นพบ
10 โหมดไม่สามารถค้นพบอุปกรณ์ที่จะไม่ตอบสนองต่อการร้องขอการค้นพบ
11 โหมดไม่ยอมให้จับคู่อุปกรณ์ที่จะไม่ยอมรับการจับคู่จะบอกว่าอยู่ในโหมดไม่สามารถจ่ายได้
12 Passkey รหัสผ่านคือรหัสผ่านที่ผู้ใช้กำหนดซึ่งจำเป็นในการเชื่อมต่อกับอุปกรณ์จากอุปกรณ์อื่น ๆ ขอแนะนำอย่างยิ่งให้ใช้รหัสผ่านทุกที่ที่เป็นไปได้เพื่อหลีกเลี่ยงการเข้าถึงอุปกรณ์ Bluetooth ของคุณโดยไม่ได้รับอนุญาต
13 การพิสูจน์ตัวตน - ขั้นตอนการยืนยันตัวตนของอีกด้านหนึ่งของลิงก์การสื่อสาร ในเทคโนโลยีบลูทู ธ สิ่งนี้ทำได้โดยกระบวนการรับรองความถูกต้องโดยอาศัยรหัสผ่านและการจับคู่
14 ไม่พบอุปกรณ์นี่เป็นข้อความแสดงข้อผิดพลาดซึ่งอาจปรากฏขึ้นหากการค้นหาอุปกรณ์อื่นในระยะไม่พบสิ่งใด
15 Idle Mode อุปกรณ์อยู่ในโหมดว่างเมื่อไม่มีการเชื่อมโยงกับอุปกรณ์อื่น ในโหมดนี้อุปกรณ์อาจค้นพบอุปกรณ์อื่น ๆ
16 การทดสอบอุปกรณ์ที่เป็นที่รู้จักอุปกรณ์ที่อุปกรณ์อื่นรู้จักอยู่แล้ว มีการจับคู่อุปกรณ์ในอดีตหรือข้อมูลบางอย่างของอุปกรณ์ที่รู้จักจะถูกจัดเก็บไว้

การทดสอบ Wi-Fi

การทดสอบการเชื่อมต่อ WiFi ของโทรศัพท์มือถือเป็นวิธีที่ยอดเยี่ยมในการตรวจสอบให้แน่ใจว่าอินเทอร์เน็ตของคุณทำงานด้วยความเร็วที่ผู้ให้บริการของคุณสัญญาไว้ แต่คุณไม่ได้ จำกัด เพียงการทดสอบบนคอมพิวเตอร์เดสก์ท็อป การทดสอบ WiFi ของโทรศัพท์มือถือเป็นวิธีที่สมบูรณ์แบบในการทดสอบพลังของสัญญาณ WiFi ของคุณในสถานที่ต่างๆในบ้านหรือที่ทำงานของคุณ ด้านล่างนี้คือรายการตรวจสอบการทดสอบ Wifi สำหรับอุปกรณ์มือถือ

ซีเนียร์ คำอธิบาย
1 แอปทำงานตามข้อกำหนดหากเชื่อมต่ออินเทอร์เน็ตผ่าน Wi-Fi หรือไม่
2 แอปทำงานตามข้อกำหนดของแอปอยู่นอกเครือข่ายหรือไม่
3 แอปจะทำงานต่อเมื่อกลับเข้าสู่เครือข่ายจากภายนอกเครือข่ายหรือไม่
4 จะเกิดอะไรขึ้นหากแอปสลับระหว่างเครือข่าย (Wi-Fi, 3G, 2G)
5 แอปใช้พอร์ตเครือข่ายมาตรฐาน (เมล: 25, 143, 465, 993 หรือ 995 HTTP: 80 หรือ 443 SFTP: 22) เพื่อเชื่อมต่อกับบริการระยะไกลเนื่องจากผู้ให้บริการบางรายบล็อกพอร์ตบางพอร์ต

วิธีเรียกใช้การทดสอบความเร็ว WiFi ของโทรศัพท์มือถือบนสมาร์ทโฟนของคุณ

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

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

เครื่องมือในการทดสอบความเร็ว

Speed Test SpeedSmart WiFi & Mobile Network Speedtest- เข้ากันได้กับ Apple iPhone และ iPad มันเป็นแอปพลิเคชันที่ต้องชำระเงิน SpeedSmart เป็นยูทิลิตี้ทดสอบความเร็ว iOS ขั้นสุดยอดสำหรับการประเมินการเชื่อมต่อเซลลูลาร์ (3G, 4G และ LTE) และ Wi-Fi บนอุปกรณ์ iOS ทั้งหมดของคุณ เครือข่ายเซิร์ฟเวอร์ทั่วโลกและวิธีทดสอบความเร็วอัจฉริยะช่วยให้มั่นใจได้ว่าผลลัพธ์จะถูกต้อง

WiFi Speed Test- เข้ากันได้กับโทรศัพท์ Android เป็นเครื่องมือที่ต้องชำระเงิน ด้วยเครื่องมือนี้คุณสามารถทดสอบความเร็วของเครือข่ายท้องถิ่น (LAN) ของคุณได้ การทดสอบสามารถทำได้บนเครือข่ายไร้สาย (WiFi) หรือเครือข่ายแบบใช้สาย

Localization & Globalization

โปรดดูรายการตรวจสอบด้านล่างเพื่อรับทราบแนวคิดเกี่ยวกับการแปลภาษาและการทดสอบโลกาภิวัตน์สำหรับอุปกรณ์เคลื่อนที่

ซีเนียร์ คำอธิบาย
1 แปลข้อความแล้ว
2 การแปลเป็นไปตามมาตรฐานของเจ้าของภาษาที่เกี่ยวกับไวยากรณ์และความถูกต้องของคำศัพท์
3 กล่องโต้ตอบได้รับการปรับขนาดอย่างเหมาะสมและข้อความโต้ตอบจะถูกยัติภังค์ตามกฎของภาษาอินเทอร์เฟซผู้ใช้
4 กล่องโต้ตอบที่แปลแล้วแถบสถานะแถบเครื่องมือและเมนูจะพอดีกับหน้าจอที่ความละเอียดต่างกัน พวกเขาไม่ห่อและไม่ถูกตัดออก
5 ตัวเร่งเมนูและไดอะล็อกไม่เหมือนใคร
6 เค้าโครงภาพสอดคล้องกับเค้าโครงของรุ่นเนทีฟ ตัวอย่างเช่นองค์ประกอบของกล่องโต้ตอบจะอยู่ในลำดับแท็บที่เหมาะสม

การทดสอบฐานข้อมูล

มีหลายวิธีที่คุณสามารถจัดเก็บข้อมูลในแอพมือถือ ในกรณีของ Android คุณสามารถเลือกที่จะจัดเก็บข้อมูลของคุณบนเซิร์ฟเวอร์การตั้งค่าที่ใช้ร่วมกันหรือ SQLite

SQLiteเป็นฐานข้อมูลที่มีน้ำหนักเบาซึ่งมักใช้ใน Android และระบบปฏิบัติการอื่น ๆ เช่นกัน ในการดูข้อมูลใน SQLite คุณอาจต้องรูทอุปกรณ์หรือใช้อีมูเลเตอร์ในการทดสอบ มีเครื่องมือบางอย่างใน Android Playstore ที่จะช่วยคุณดึงข้อมูลจากฐานข้อมูลนี้

การทดสอบประเภทต่อไปนี้ควรเป็นส่วนหนึ่งของการทดสอบฐานข้อมูลมือถือของคุณ -

  • การทดสอบการตรวจสอบฐานข้อมูล
  • การทดสอบการรวมฐานข้อมูล
  • การทดสอบประสิทธิภาพของฐานข้อมูล
  • การทดสอบขั้นตอนและฟังก์ชัน
  • การทดสอบทริกเกอร์
  • การทดสอบการดำเนินการ CRUD (สร้าง / อ่าน / อัปเดต / ลบ) เพื่อให้แน่ใจว่าจะทำงานบนฐานข้อมูลได้
  • การทดสอบว่าการเปลี่ยนแปลงฐานข้อมูลแสดงอย่างถูกต้องบน UI ของแอป
  • การทดสอบฟังก์ชันการค้นหาและการสร้างดัชนี

การทดสอบการกู้คืน

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

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

ซีเนียร์ No คำอธิบาย
1 ข้อมูลสำรองที่เพียงพอจะถูกเก็บรักษาไว้
2 ข้อมูลสำรองจะถูกเก็บไว้ในตำแหน่งที่ปลอดภัย
3 มีการบันทึกขั้นตอนการกู้คืน
4 ไฟล์สื่อทั้งหมดถูกกู้คืนจากจุดคืนค่า
5 กู้คืนรายชื่อติดต่อทั้งหมดแล้ว
6 แอปพลิเคชันทั้งหมดได้รับการกู้คืนเรียบร้อยแล้ว

การทดสอบภาวะพร้อมกัน

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

การทดสอบการใช้งาน

โดยทั่วไปคุณจะได้รับอุปกรณ์ที่สามารถปรับโทรศัพท์มือถือและเว็บแคมเพื่อบันทึกเซสชันการประเมินการใช้งานได้

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

ด้านล่างเป็นรายการตรวจสอบทั่วไปสำหรับการทดสอบ GUI

ซีเนียร์ คำอธิบาย
1 สามารถติดตั้งแอปในเครื่องได้หรือไม่?
2 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากมีสายเรียกเข้า
3 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากมี SMS เข้ามา
4 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากเชื่อมต่ออุปกรณ์ชาร์จ
5 แอพทำงานตามที่ออกแบบ / ต้องการหรือไม่หากถอดสายชาร์จ
6 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์เข้าสู่โหมดสลีป
7 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์กลับสู่โหมดสลีป
8 แอปทำงานตามที่ออกแบบไว้ / ต้องการหรือไม่หากอุปกรณ์ดำเนินการต่อจากหน้าจอล็อก
9 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์เอียง
10 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์สั่น
11 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากข้อความในเครื่องมาจากแอปอื่น (ให้นึกถึง: การเตือนปฏิทินงานที่ต้องทำ ฯลฯ )
12 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากข้อความพุชมาจากแอปอื่น (ให้นึกถึง: twitter กล่าวถึงข้อความ Whatsapp ฯลฯ )
13 แอปโต้ตอบกับเซ็นเซอร์ GPS อย่างถูกต้อง (เปิด / ปิดดึงข้อมูล GPS) หรือไม่
14 การทำงานของปุ่มหรือปุ่มทั้งหมดบนอุปกรณ์ถูกกำหนดไว้สำหรับแอพนี้หรือไม่
15 ตรวจสอบว่าปุ่มหรือคีย์ที่ไม่มีฟังก์ชันกำหนดไว้ไม่มีพฤติกรรมที่ไม่คาดคิดในแอปเมื่อเปิดใช้งาน
16 ในกรณีที่มีปุ่ม "ย้อนกลับ" ที่แท้จริงบนอุปกรณ์ปุ่ม "ย้อนกลับ" จะนำผู้ใช้ไปยังหน้าจอก่อนหน้าหรือไม่
17 ในกรณีที่มีปุ่ม“ เมนู” จริงบนอุปกรณ์ปุ่มเมนูจะแสดงเมนูของแอปหรือไม่
18 ในกรณีที่มีปุ่ม "หน้าแรก" ที่แท้จริงในอุปกรณ์ปุ่มโฮมจะพาผู้ใช้กลับไปที่หน้าจอหลักของอุปกรณ์หรือไม่
19 ในกรณีที่มีปุ่ม "ค้นหา" ที่แท้จริงบนอุปกรณ์สิ่งนี้จะช่วยให้ผู้ใช้เข้าถึงรูปแบบการค้นหาบางรูปแบบภายในแอปได้หรือไม่
20 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากข้อความ "แบตเตอรี่ต่ำ" ถูกดัน
21 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากปิดเสียงบนอุปกรณ์
22 แอปทำงานตามที่ออกแบบ / ต้องการหรือไม่หากอุปกรณ์อยู่ในโหมดเครื่องบิน
23 สามารถถอนการติดตั้งแอปออกจากอุปกรณ์ได้หรือไม่?
24 แอปพลิเคชันทำงานตามที่คาดไว้หลังจากติดตั้งใหม่หรือไม่?
25 แอพหาได้จากแอพสโตร์หรือไม่? (ตรวจสอบหลังเผยแพร่)
26 แอพสามารถเปลี่ยนไปใช้แอพต่างๆบนอุปกรณ์ผ่านการทำงานหลายอย่างพร้อมกันตามที่ออกแบบ / ต้องการได้หรือไม่?
27 ตำแหน่ง (ปุ่ม) ของหน้าจอสัมผัสทั้งหมดทำงานเมื่อใช้ตัวป้องกันหน้าจอ

testing framework หรือโดยเฉพาะก testing ระบบอัตโนมัติ framework เป็นสภาพแวดล้อมการดำเนินการที่จะดำเนินการ automated tests. เป็นระบบโดยรวมที่การทดสอบจะเป็นแบบอัตโนมัติ หมายถึงชุดของสมมติฐานแนวคิดและแนวปฏิบัติที่ประกอบเป็นแพลตฟอร์มการทำงานหรือสนับสนุนการทดสอบอัตโนมัติ

กรอบการทดสอบมีหน้าที่ -

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

สถาปัตยกรรมกรอบ

สถาปัตยกรรมทั่วไปของกรอบการทดสอบมีดังนี้ -

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

มีกรอบการทดสอบ Android มากมายในตลาด ลองมาดู 5 อันดับแรกในกอง

  • Robotium- Robotium เป็นกรอบการทดสอบโอเพ่นซอร์สสำหรับการพัฒนาสถานการณ์การทดสอบการทำงานระบบและการยอมรับ คล้ายกับซีลีเนียมมาก

  • UIAutomator- UIAutomator เป็นกรอบการทดสอบของ Google ที่ให้การทดสอบ UI ขั้นสูงของแอพและเกม Android ดั้งเดิม มีไลบรารี Java ที่มี API เพื่อสร้างการทดสอบ UI ที่ใช้งานได้และยังมีเอ็นจิ้นการดำเนินการเพื่อเรียกใช้การทดสอบ

  • Appium- Appium เป็นเฟรมเวิร์กการทดสอบอัตโนมัติแบบโอเพนซอร์สเพื่อทดสอบแอพเนทีฟและไฮบริดและแอพเว็บบนมือถือ ฟังก์ชั่นไลบรารี Appium ภายในเฟรมเวิร์กโทรไปยังเซิร์ฟเวอร์ Appium ที่ทำงานอยู่เบื้องหลังซึ่งใช้งานอุปกรณ์ที่เชื่อมต่อ

  • Calabash- Calabash เป็นกรอบการทดสอบการทำงานที่สามารถใช้ได้ทั้งการทดสอบการทำงานของ iOS และ Android บนกระดาษต้องเป็นหนึ่งในกรอบงานที่ง่ายที่สุดในการใช้งานและแม้แต่ผู้ที่ไม่ใช่นักพัฒนาก็สามารถสร้างการทดสอบการทำงานโดยใช้มันได้

  • Selendroid- Selendroid เป็นเด็กที่ค่อนข้างใหม่ในบล็อกและสามารถใช้ทดสอบแอปพลิเคชัน Android ของคุณได้ เห็นได้ชัดว่าหากคุณคุ้นเคยกับซีลีเนียม Selendroid ควรเป็นวิธีง่ายๆในการใช้ความรู้เพื่อสร้างการทดสอบการทำงานสำหรับ Android

เช่นเดียวกับกรอบการทดสอบ Android มีกรอบการทดสอบ iOS มากมายในตลาด ที่นี่เราจะพูดถึงคนที่เป็นที่นิยมไม่กี่คน

  • Appium- Appium เป็นเฟรมเวิร์กการทดสอบอัตโนมัติแบบโอเพนซอร์สเพื่อทดสอบแอพเนทีฟและไฮบริดและแอพเว็บบนมือถือ ฟังก์ชั่นไลบรารี Appium ภายในเฟรมเวิร์กโทรไปยังเซิร์ฟเวอร์ Appium ที่ทำงานในพื้นหลังซึ่งทำงานกับอุปกรณ์ที่เชื่อมต่อ

  • Calabash- Calabash เป็นกรอบการทดสอบการทำงานที่สามารถใช้ได้ทั้งการทดสอบการทำงานของ iOS และ Android บนกระดาษต้องเป็นหนึ่งในกรอบงานที่ง่ายที่สุดในการใช้งานและแม้แต่ผู้ที่ไม่ใช่นักพัฒนาก็สามารถสร้างการทดสอบการทำงานโดยใช้มันได้

  • Zucchini - Zucchini เป็นกรอบการทดสอบการทำงานแบบโอเพนซอร์สสำหรับแอปพลิเคชัน iOS ที่ใช้ Apple UIAutomation

  • UI Automation- สำหรับการทดสอบการทำงานโดยทั่วไปของคุณ (หรือการทดสอบกล่องดำ) ซึ่งคุณจะเขียนโค้ดที่จำลองผู้ใช้ปลายทางที่นำทางแอปของคุณมี UI Automation UI Automation ให้บริการโดย Apple และเป็นวิธีการทดสอบการทำงานของ iOS ที่ได้รับอนุญาตจาก Apple

  • FRANK – BDD for iOS - หากคุณต้องการทำการทดสอบแบบ end-to-end ใน iOS และหวังว่าคุณจะใช้ BDD และ Cucumber ได้ก็ไม่ต้องกังวล - มีเครื่องมือที่เรียกว่า Frank ที่จะช่วยให้คุณสร้างการทดสอบการยอมรับและข้อกำหนดโดยใช้ Cucumber

การเปรียบเทียบระหว่างกรอบการทดสอบต่างๆ

Robotium เป็นกรอบการทดสอบโอเพ่นซอร์สสำหรับการเขียนกรณีทดสอบกล่องเทาอัตโนมัติสำหรับแอปพลิเคชัน Android ด้วยการสนับสนุนของ Robotium ผู้พัฒนากรณีทดสอบสามารถเขียนฟังก์ชันระบบและสถานการณ์การทดสอบการยอมรับซึ่งครอบคลุมกิจกรรมต่างๆของ Android

Robotium สามารถใช้ได้ทั้งสำหรับการทดสอบแอปพลิเคชันที่มีซอร์สโค้ดและแอปพลิเคชันที่มีเฉพาะไฟล์ APK เท่านั้น

ประโยชน์ของ Robotium

  • เขียนง่ายโค้ดสั้นลง ใช้เวลาน้อยที่สุดในการเขียนกรณีทดสอบที่มั่นคง

  • คุณสามารถพัฒนากรณีทดสอบที่มีประสิทธิภาพโดยมีความรู้เพียงเล็กน้อยเกี่ยวกับแอปพลิเคชันที่อยู่ระหว่างทดสอบ

  • เฟรมเวิร์กจะจัดการกิจกรรมต่างๆของ Android โดยอัตโนมัติ ความสามารถในการอ่านของกรณีทดสอบดีขึ้นอย่างมากเมื่อเทียบกับการทดสอบเครื่องมือวัดมาตรฐาน

  • เวลาอัตโนมัติและความล่าช้า

  • ติดตามกิจกรรมปัจจุบันโดยอัตโนมัติ

  • ค้นหามุมมองโดยอัตโนมัติ

  • ตัดสินใจเองโดยอัตโนมัติ (เช่นเมื่อใดควรเลื่อน ฯลฯ )

  • ไม่มีการปรับเปลี่ยนแพลตฟอร์ม Android

  • การดำเนินการทดสอบทำได้รวดเร็ว

  • กรณีทดสอบมีประสิทธิภาพมากขึ้นเนื่องจากการเชื่อมโยงเวลาทำงานกับส่วนประกอบ GUI

  • ผสานรวมกับ Maven หรือ Ant ได้อย่างราบรื่น

ข้อเสียของ Robotium

  • Robotium ไม่สามารถจัดการกับ Flash หรือส่วนประกอบของเว็บได้

  • จัดการได้ครั้งละหนึ่งแอปพลิเคชันเท่านั้น

  • ไม่สามารถจำลองการคลิกบนคีย์บอร์ดแบบนุ่มโดยใช้ Robotium (จำเป็นต้องใช้ 'enterText ()' เพื่อป้อนข้อความลงในช่อง EditText)

  • Robotium ไม่สามารถโต้ตอบกับการแจ้งเตือนแถบสถานะได้นั่นคือดึงพื้นที่การแจ้งเตือนลงมาและคลิกที่การแจ้งเตือนที่ระบุ

  • อาจช้าเล็กน้อยโดยเฉพาะการทำงานบนอุปกรณ์รุ่นเก่า

วิธีใช้ Robotium

Step 1- ข้อกำหนดเบื้องต้นในการใช้ Robotium คือ Java SDK (ขั้นต่ำ 1.6) หากคุณไม่ได้ติดตั้ง Java ในระบบของคุณให้ทำตามขั้นตอนที่ระบุด้านล่าง

  • ดาวน์โหลด JDK และ JRE จากOracle Technology Network

  • ยอมรับข้อตกลงใบอนุญาต

  • ติดตั้ง JDK และ JRE

  • ตั้งค่าตัวแปรสภาพแวดล้อมตามที่แสดงในภาพหน้าจอด้านล่าง

Step 2- ดาวน์โหลด Android Studio จากAndroid Studio

  • ดับเบิลคลิกที่ exe และเรียกใช้โปรแกรมติดตั้ง
  • ดำเนินการต่อด้วยตัวเลือกเริ่มต้นทั้งหมด
  • ตั้งค่า ANDROID_HOME

Step 3 - ติดตั้งภาพและเครื่องมือ Android

  • คลิกที่ SDK Manager -
  • เลือกแพ็คเกจที่จำเป็น ตัวอย่างเช่นหากเรากำลังสร้างแอปสำหรับ Android 4.4.2 ให้ตรวจสอบว่าได้ตรวจสอบแพ็คเกจต่อไปนี้แล้วในส่วนเครื่องมือ -

    • เครื่องมือ SDK Android rev 22.6.3
    • เครื่องมือแพลตฟอร์ม Android rev 19.0.1
    • เครื่องมือสร้าง SDK ของ Android rev 19.1.1

Step 4 - สร้างอุปกรณ์เสมือน Android

  • เปิด Android Studio แล้วคลิก AVD Manager ในแถบเครื่องมือ AVD ช่วยให้เราทดสอบและเรียกใช้แอพ Android ของเรา
  • ใช้การตั้งค่าต่อไปนี้สำหรับ Nexus5 AVD -

    • อุปกรณ์ - Nexus 5 (4.95, 1080 x 1920; xxhdpi)
    • เป้าหมาย - Google APIs x86 (Google Inc. ) - API ระดับ 19
    • (ตรวจสอบให้แน่ใจว่าคุณได้เลือกเป้าหมายด้วย Google API ในชื่อ)
    • ซีพียู - Intel Atom (x86)
    • ทำเครื่องหมายที่ช่อง Use Host GPU
    • คลิกตกลง
  • ตอนนี้คุณควรเห็น AVD ที่คุณสร้างขึ้นใน AVD Manager ซึ่งคุณสามารถเริ่มต้นลบหรือสร้างใหม่ได้!

Step 5- ไฟล์ Robotium Jar ดาวน์โหลดไฟล์ Robotium Jar จากRobotiumTech

ทดสอบแอปด้วย Robotium

ในการทดสอบแอพกับ Robotium ให้ทำตามขั้นตอนด้านล่าง -

Step 1 - สร้างโครงการทดสอบใน Android Studio ที่ชื่อว่า "RobotiumTest"

เลือกตัวเลือกเริ่มต้นทั้งหมดจนกว่าคุณจะไปถึงหน้าหลัก

Step 2 - คัดลอกไฟล์ Robotium jar ลงในโฟลเดอร์ Lib ของโครงการ

Step 3 - เพิ่มการอ้างอิงในไฟล์ build.gradle ภายใต้ src โฟลเดอร์

androidTestCompile 'com.jayway.android.robotium: robotium-solo-5.5.3'

Step 4 - ซิงค์ Gradle

Step 5 - สร้างคลาสทดสอบดังนี้ -

package com.example;

import com.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.EditText;
import android.widget.TextView;

public class MyTestClass extends ActivityInstrumentationTestCase2<TestActivity>{

   private Solo solo;

   public MyTestClass() {
      super(TestActivity.class);
   }

   public void setUp() throws Exception {
      solo = new Solo(getInstrumentation(), getActivity());
   }

   public void testCase() throws Exception {
      String vResult="TestExample";
      EditText vEditText = (EditText) solo.getView(R.id.edit1);
      solo.clearEditText(vEditText);
      solo.enterText(vEditText,"TestExample");
      solo.clickOnButton("Submit");
      assertTrue(solo.searchText(vResult));
      TextView textField = (TextView) solo.getView(R.id.txt1);
      //Assert to verify result with visible value
      assertEquals(vResult, textField.getText().toString());
   }

   @Override
   public void tearDown() throws Exception {
      solo.finishOpenedActivities();
   }
}

Step 6- บันทึกการเปลี่ยนแปลงทั้งหมด ตรวจสอบให้แน่ใจว่าไม่มีข้อผิดพลาด

Step 7- ตอนนี้เรียกใช้กรณีทดสอบ หากกรณีทดสอบสำเร็จคุณจะเห็นผลลัพธ์ต่อไปนี้!

Selendroid เป็นกรอบการทดสอบอัตโนมัติสำหรับการทดสอบแอปพลิเคชัน Android เนทีฟและไฮบริด การทดสอบ Selendroid เขียนโดยใช้ไคลเอนต์ Selenium Webdriver API

ประโยชน์ของ Selendroid

  • เข้ากันได้กับ JSON Wire Protocol / Selenium 3 Ready

  • ไม่จำเป็นต้องปรับเปลี่ยนแอปที่อยู่ระหว่างการทดสอบเพื่อทำให้เป็นอัตโนมัติ

  • การทดสอบเว็บบนอุปกรณ์เคลื่อนที่โดยใช้แอพ webview ไดรเวอร์ Android ในตัว

  • แนวคิดเดียวกันสำหรับการทำให้แอปเนทีฟหรือไฮบริดโดยอัตโนมัติ

  • องค์ประกอบ UI สามารถพบได้ตามประเภทตัวระบุตำแหน่งต่างๆ

  • รองรับท่าทางสัมผัส: Advanced User Interactions API

  • อีมูเลเตอร์ที่มีอยู่จะเริ่มทำงานโดยอัตโนมัติ

  • Selendroid รองรับการเสียบอุปกรณ์ฮาร์ดแวร์แบบร้อนแรง

  • การรวมแบบสมบูรณ์เป็นโหนดใน Selenium Grid สำหรับการปรับขนาดและการทดสอบแบบขนาน

  • รองรับ API เป้าหมายของ Android หลายรายการ (10 ถึง 19)

  • ตัวตรวจสอบในตัวเพื่อลดความซับซ้อนในการพัฒนากรณีทดสอบ

  • Selendroid สามารถขยายขณะรันไทม์ด้วยส่วนขยายของคุณเอง

  • Selendroid สามารถโต้ตอบกับอุปกรณ์ Android หลายเครื่อง (อีมูเลเตอร์หรืออุปกรณ์ฮาร์ดแวร์) ในเวลาเดียวกัน

ข้อเสียของ Selendroid

ข้อเสียเปรียบของเครื่องมือนี้คือมันค่อนข้างช้าและในบางเครื่องที่มี RAM น้อยกว่า 4GB จะไม่สามารถใช้งานได้

วิธีใช้ Selendroid

Step 1- ข้อกำหนดเบื้องต้นในการใช้ Robotium คือ Java SDK (ขั้นต่ำ 1.6) หากคุณไม่ได้ติดตั้ง Java ในระบบของคุณให้ทำตามขั้นตอนที่ระบุด้านล่าง

  • ดาวน์โหลด JDK และ JRE จากOracle JavaSE

  • ยอมรับข้อตกลงใบอนุญาต

  • ติดตั้ง JDK และ JRE

  • ตั้งค่าตัวแปรสภาพแวดล้อมตามที่แสดงในภาพหน้าจอด้านล่าง

Step 2- ดาวน์โหลด Android Studio จากSDK Android (อาจต้องใช้เวลาเนื่องจากขนาดของไฟล์)

  • ดับเบิลคลิกที่ exe และเรียกใช้โปรแกรมติดตั้ง
  • ดำเนินการต่อด้วยตัวเลือกเริ่มต้นทั้งหมด
  • ตั้งค่า ANDROID_HOME

Step 3- ดาวน์โหลดไฟล์ Selenium jar และทดสอบแอปพลิเคชันจากSelendroid

  • ดาวน์โหลดไฟล์ซีลีเนียม jar และแอปทดสอบ
  • วางไว้ในโฟลเดอร์ใดก็ได้เช่น D: \ SelendroidJars

Step 4 - อุปกรณ์ทางกายภาพพร้อมสาย USB

  • ตรวจสอบให้แน่ใจว่าอุปกรณ์เชื่อมต่อกับเวิร์กสเตชันด้วยสาย USB

  • ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานโหมดดีบัก USB (ภายใต้การตั้งค่า→ตัวเลือกสำหรับนักพัฒนา)

ทดสอบแอปด้วย Selendroid

ในการทดสอบแอปโดยใช้ Selendroid ให้ทำตามขั้นตอนด้านล่าง -

Step 1 - ติดตั้ง Eclipse

Step 2 - สร้างโครงการ Java

Step 3 - เพิ่มไฟล์ Selendroid jar ที่ดาวน์โหลดไปยังโปรเจ็กต์ที่สร้างขึ้นใหม่

Step 4 - เพิ่มไฟล์ Selenium jar ที่ดาวน์โหลดไปยังโปรเจ็กต์ที่สร้างขึ้นใหม่

Step 5 - กำหนดค่า testNG ใน Eclipse

Step 6- เชื่อมต่ออุปกรณ์มือถือกับระบบโดยใช้สาย USB ตั้งค่าโหมดดีบัก USB จากตัวเลือกของผู้พัฒนาภายใต้การตั้งค่า

Step 7- เรียกใช้เซิร์ฟเวอร์ Selendroid เปิดพรอมต์คำสั่งและเขียนรหัสต่อไปนี้แล้วกด Enter -

java -jar selendroid-standalone-0.17.0-with-dependencies.jar -app selendroid-test-app-0.17.0.apk

Selendroid-standalone จะเริ่มเซิร์ฟเวอร์ http บนพอร์ต 4444 และจะสแกนอุปกรณ์เสมือน Android ทั้งหมด (avd) ที่ผู้ใช้สร้างขึ้น (~ / .android / avd /)

เปิดเว็บเบราว์เซอร์และไปที่: http://localhost:4444/wd/hub/status.

Step 8- สร้างโครงการ Java เพิ่มไลบรารี Selendroid Standalone, Selenium jar และ JUnit libraries ใน build path

Step 9 - สร้างแพ็คเกจภายใต้โครงการ Java

Step 10 - สร้างคลาสภายใต้แพ็คเกจและเขียนโค้ดต่อไปนี้

package selTest;

import io.selendroid.SelendroidDriver; 
import io.selendroid.common.SelendroidCapabilities;
import io.selendroid.standalone.SelendroidConfiguration;
import io.selendroid.standalone.SelendroidLauncher;

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebElement; 

import org.testng.Assert; 
import org.testng.annotations.AfterSuite; 
import org.testng.annotations.BeforeSuite; 
import org.testng.annotations.Test;

public class SelendroidTest {

   private WebDriver driver ;

   @BeforeSuite 
   public void setUp() throws Exception {
      SelendroidConfiguration config = new SelendroidConfiguration();
      config.addSupportedApp("selendroid-test-app-0.9.0.apk");
      SelendroidLauncher selendroidServer = new SelendroidLauncher(config);
      selendroidServer.launchSelendroid();
	  
      SelendroidCapabilities caps = new
         SelendroidCapabilities("io.selendroid.testapp:0.9.0"); 
      driver = new SelendroidDriver(caps);
   }
   
   @Test 
   public void selendroidTest() throws Exception {
      WebElement inputField = driver.findElement(By.id("my_text_field"));
      Assert.assertEquals("true", inputField.getAttribute("enabled"));
      inputField.sendKeys("Selendroid");
      
      Assert.assertEquals("Selendroid", inputField.getText());
	  
      WebElement button = driver.findElement(By.id("buttonTest"));
      button.click();
	  
      button = driver.findElement(By.id("button2"));
      button.click();
      
      Thread.sleep(5000);
	  
      button = driver.findElement(By.id("startUserRegistration"));
      button.click();
      
      Thread.sleep(10000);
	  
      WebElement element = driver.findElement(By.id("label_username")); 
      
      String text = element.getText();
      System.out.println(text);
      element = driver.findElement(By.id("inputUsername"));
      element.sendKeys("bob");
      
      element = driver.findElement(By.id("inputEmail"));
      element.sendKeys("[email protected]"); 
      
      element = driver.findElement(By.id("inputPassword"));
      element.clear();
      element.sendKeys("test1233");
      
      element = driver.findElement(By.id("inputName"));
      element.clear(); 
      element.sendKeys("My Name ");
	  
      element = driver.findElement(By.id("input_preferedProgrammingLanguage")); 
      element.click();
      
      element = driver.findElement(By.id("text1"));
      element.click();
	  
      element = driver.findElement(By.id("input_adds"));
      element.click();
	  
      element = driver.findElement(By.id("btnRegisterUser"));
      element.click();
      
      element = driver.findElement(By.id("buttonRegisterUser"));
      element.click(); 
   }
   
   @AfterSuite 
   public void tearDown(){ 
      driver.quit(); 
   } 
}

Step 11 - เรียกใช้คลาสด้วยการกำหนดค่าการรัน testNG

Appium เป็นเฟรมเวิร์กการทดสอบอัตโนมัติแบบโอเพนซอร์สสำหรับการทดสอบแอพเนทีฟและไฮบริดและแอพเว็บบนอุปกรณ์เคลื่อนที่ ขับเคลื่อนแอป iOS และ Android โดยใช้โปรโตคอล WebDriver

ข้อดีของ Appium

  • เป็นโอเพ่นซอร์สฟรีและ (ส่วนใหญ่)

  • มีกลุ่ม Google ที่สนับสนุนและใช้งานได้ดีมาก

  • มันอยู่ในข้อมูลจำเพาะของ Selenium 3 ดังนั้นควรเป็นข้อพิสูจน์ในอนาคต

  • รองรับทั้ง Android และ iOS

  • ไม่จำเป็นต้องติดตั้งอะไรบนอุปกรณ์ - ไม่จำเป็นต้องเปลี่ยนเซิร์ฟเวอร์หรือรหัส

ข้อเสียของ Appium

  • ไม่รองรับการรออัจฉริยะ
  • บน iOS คุณสามารถทำการทดสอบได้ครั้งละหนึ่งครั้งต่อ Mac เท่านั้น
  • รองรับท่าทางได้ จำกัด
  • รองรับ Android <4.1 อย่าง จำกัด

วิธีใช้ Appium

Step 1- ข้อกำหนดเบื้องต้นในการใช้ Appium คือ Java SDK (ขั้นต่ำ 1.6) หากคุณไม่ได้ติดตั้ง Java ในระบบของคุณให้ทำตามขั้นตอนที่ระบุด้านล่าง

  • ดาวน์โหลด JDK และ JRE จากOracle JavaSE

  • ยอมรับข้อตกลงใบอนุญาต

  • ติดตั้ง JDK และ JRE

  • ตั้งค่าตัวแปรสภาพแวดล้อมตามที่แสดงในภาพหน้าจอด้านล่าง

Step 2- ดาวน์โหลด Android Studio จากSDK (อาจต้องใช้เวลาเนื่องจากขนาดของไฟล์)

  • ดับเบิลคลิกที่ exe และเรียกใช้โปรแกรมติดตั้ง
  • ดำเนินการต่อด้วยตัวเลือกเริ่มต้นทั้งหมด
  • ตั้งค่า ANDROID_HOME

Step 3 - ติดตั้งภาพและเครื่องมือ Android

  • คลิกที่ SDK Manager -
  • เลือกแพ็คเกจที่จำเป็น ตัวอย่างเช่นหากเรากำลังสร้างแอปสำหรับ Android 4.4.2 ให้ตรวจสอบว่าได้ตรวจสอบแพ็คเกจต่อไปนี้แล้วในส่วนเครื่องมือ -

    • เครื่องมือ SDK Android rev 22.6.3
    • เครื่องมือแพลตฟอร์ม Android rev 19.0.1
    • เครื่องมือสร้าง SDK ของ Android rev 19.1.1

Step 4 - สร้างอุปกรณ์เสมือน Android -

  • เปิด Android Studio แล้วคลิก AVD Manager ในแถบเครื่องมือ AVD ช่วยให้เราทดสอบและเรียกใช้แอพ Android ของเรา

  • ใช้การตั้งค่าต่อไปนี้สำหรับ Nexus5 AVD -

    • อุปกรณ์: Nexus 5 (4.95, 1080 x 1920; xxhdpi)

    • เป้าหมาย: Google APIs x86 (Google Inc. ) - API ระดับ 19

    • ตรวจสอบให้แน่ใจว่าคุณได้เลือกเป้าหมายด้วย Google APIs ในชื่อ

    • ซีพียู: Intel Atom (x86)

    • ทำเครื่องหมายที่ช่อง Use Host GPU

    • คลิกตกลง

  • ตอนนี้คุณควรเห็น AVD ที่คุณสร้างขึ้นใน AVD Manager ซึ่งคุณสามารถเริ่มต้นลบหรือสร้างใหม่ได้!

Step 5- ดาวน์โหลดไฟล์ Appium jar จากAppium

ทดสอบแอปด้วย Appium

ในการทดสอบแอปกับ Appium ให้ทำตามขั้นตอนด้านล่าง -

Step 1 - สร้างโครงการทดสอบใน Android Studio ที่ชื่อว่า "RobotiumTest"

เลือกตัวเลือกเริ่มต้นทั้งหมดจนกว่าคุณจะไปถึงหน้าหลัก

Step 2- เพิ่มขวด Appium ในโครงการของคุณ คลิก Project → App →คัดลอกขวดทั้งหมดใน lib เลือกขวดที่คัดลอกยกเว้น Selenium ไคลเอนต์ Java และ Junit Jar จากนั้นคลิกขวาที่มันและคลิกที่ "เพิ่มเป็นห้องสมุด"

Step 3- คลิกที่ build.gradle ในแอพ คุณจะเห็นไลบรารีทั้งหมดที่เพิ่มเข้ามาดังที่แสดงในภาพหน้าจอต่อไปนี้

Step 4 - ตอนนี้สร้างคลาส Java ตามที่แสดงด้านล่าง -

AppiumDriver driver;
@Before
public void testCaseSetup()throws Exception {
   //service.start();
   //reader.readFile();

   DesiredCapabilities cap = new DesiredCapabilities();
	
   cap.setCapability(MobileCapabilityType.PLATFORM_NAME,"Android");
   cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
   cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000");
   cap.setCapability(MobileCapabilityType.APP, "c://apk//sample.apk");
	
   driver = new AndroidDriver<MobileElement>("http://127.0.0.1:4444/wd/hub",cap);
}

@Test
public void testcase1()throws Exception {
   driver.findElementByID("Example").click();
   Asser.assertTrue(driver.findElementByID("Example").isDisplayed));
}

@After
public void testCaseTearDown() {
   driver.quit();
}

Step 5 - เรียกใช้กรณีทดสอบ

  • คลิกที่ตัวแปรสร้างและเลือกการทดสอบหน่วย
  • เริ่มต้นเซิร์ฟเวอร์ Appium ด้วยพอร์ตเฉพาะ "4444"
    • ดาวน์โหลด Appium สำหรับ Windows จากที่นี่
    • ดับเบิลคลิกที่. exe และติดตั้ง Appium
    • คลิกที่ไอคอนเพื่ออัพ UI
    • เปลี่ยนพอร์ตหากจำเป็นดังที่แสดงด้านล่าง
    • คลิกปุ่มเล่นเพื่อเริ่มเซิร์ฟเวอร์
  • เชื่อมต่ออุปกรณ์ด้วยการดีบัก USB หรือเริ่มโปรแกรมจำลอง
  • คลิกขวาที่คลาสทดสอบและคลิกที่ "Run"

Zucchini เป็นกรอบการทดสอบใหม่ที่ใช้ภาษาเฉพาะโดเมนสไตล์ BDD (DSL) ประเด็นสำคัญประการหนึ่งคือการลดความซับซ้อนของการทดสอบการยอมรับที่เขียนด้วยซีลีเนียม

ไม่ใช่การแทนที่ JBehave หรือ Robot Framework อย่างที่คุณจะเห็นในภายหลัง ที่นี่เราจะให้คุณเห็นแนวคิดของ Zucchini โดยการอธิบายตัวอย่างทีละขั้นตอน

วิธีการติดตั้ง Zucchini

ข้อกำหนดเบื้องต้นในการติดตั้ง Zucchini คือ XCode 4.2 นอกจากนี้ยังต้องใช้เครื่องมือบรรทัดคำสั่งบางอย่างเช่นการอัปเดตการชง && การติดตั้งการชง imagemagick && brew install coffee-script

วิธีใช้บวบ

  • gem install zucchini-ios

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

  • เริ่มต้นด้วยการสร้างโครงงาน

  • zucchini generate --project /path/to/my_project

  • สร้างโครงสำหรับคุณลักษณะแรกของคุณ

  • zucchini generate --feature /path/to/my_project/features/my_feature

  • เริ่มแฮ็คโดยการแก้ไข features/my_feature/feature.zucchini และ features/support/screens/welcome.coffee.

  • อีกวิธีหนึ่งคือดูโครงการสาธิตบวบที่มีการตั้งค่าบวบที่ง่ายต่อการสำรวจรอบตัวอย่าง CoreDataBooks ของ Apple

กำลังทำงานบนอุปกรณ์

  • เพิ่มอุปกรณ์ของคุณไปที่ features/support/config.yml.

  • udidetect ยูทิลิตี้มีประโยชน์หากคุณวางแผนที่จะเพิ่มอุปกรณ์เป็นครั้งคราว - udidetect -z.

    ZUCCHINI_DEVICE="My Device" zucchini run /path/to/my_feature

  • ทำงานบน iOS Simulator เราขอแนะนำให้คุณเรียกใช้คุณลักษณะ Zucchini ของคุณบนฮาร์ดแวร์จริง อย่างไรก็ตามคุณสามารถเรียกใช้งานได้บน iOS Simulator หากคุณต้องการ

    • ก่อนอื่นให้แก้ไขไฟล์ features/support/config.ymlเพื่อรวมเส้นทางแบบเต็มไปยังแอปที่คอมไพล์ของคุณ ตัวอย่างเช่น,

      แอป: /Users/vaskas/Library/Developer/Xcode/DerivedData/CoreDataBooks-ebeqiuqksrwwoscupvxuzjzrdfjz/Build/Products/Debug-iphonesimulator/CoreDataBooks.app

    • ประการที่สองเพิ่มรายการ 'iOS Simulator' ในส่วนอุปกรณ์ (ไม่จำเป็นต้องใช้ UDID) และตรวจสอบให้แน่ใจว่าคุณได้ระบุค่าที่แท้จริงสำหรับ 'หน้าจอ' ตามการตั้งค่า iOS Simulator ของคุณ -

  • เรียกใช้เช่น -

    ZUCCHINI_DEVICE="iOS Simulator" zucchini run /path/to/my_feature

การแสดงผล