การทดสอบมือถือ - คู่มือฉบับย่อ
ก่อนที่เราจะเริ่มบทแนะนำจริงมาสนุกกันเถอะ ดูรายการต่อไปนี้ คุณสามารถเชื่อมโยงกับงานสำคัญเหล่านี้ที่เราต้องเผชิญอยู่เสมอในวิถีชีวิตที่วุ่นวายและเร่งรีบในปัจจุบัน -
ฉันต้องการจ่ายค่าไฟฟ้าของฉัน
ฉันต้องการติดต่อกับผู้จัดการและส่งรายงานอย่างเร่งด่วน
ฉันอยากซื้อเสื้อผ้าใหม่ให้ลูก แต่ไม่มีเวลาไปร้าน
โอ้ ... มัน 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
เริ่มต้นด้วยการสร้างโครงงาน
สร้างโครงสำหรับคุณลักษณะแรกของคุณ
เริ่มแฮ็คโดยการแก้ไข features/my_feature/feature.zucchini และ features/support/screens/welcome.coffee.
บวบไม่เกี่ยวข้องกับการแก้ไขรหัสแอปพลิเคชันของคุณ คุณอาจเก็บการทดสอบบวบไว้ในโครงการแยกต่างหาก
zucchini generate --project /path/to/my_project
zucchini generate --feature /path/to/my_project/features/my_feature
อีกวิธีหนึ่งคือดูโครงการสาธิตบวบที่มีการตั้งค่าบวบที่ง่ายต่อการสำรวจรอบตัวอย่าง CoreDataBooks ของ Apple
กำลังทำงานบนอุปกรณ์
เพิ่มอุปกรณ์ของคุณไปที่ features/support/config.yml.
ทำงานบน 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
udidetect ยูทิลิตี้มีประโยชน์หากคุณวางแผนที่จะเพิ่มอุปกรณ์เป็นครั้งคราว - udidetect -z.
ZUCCHINI_DEVICE="My Device" zucchini run /path/to/my_feature