![OSAutoBlogChartFinal]()
![mobile-testing]()
ช่วงวันหยุดมาดูกันหน่อยว่า
เครื่องมือการทดสอบ Mobile App มีอะไรที่น่าสนใจบ้าง
ซึ่งเน้นเครื่องมือที่เป็น Open source
เพื่อแนะนำให้ Developer และ Tester/QA นำไปใช้งานได้ง่ายขึ้น
มาดูกันว่ามีอะไรบ้าง ?
โดยทาง PerfectoMobile มีเงื่อนไขในการเลือกเครื่องมือดังนี้
- ง่ายต่อการพัฒนาและทำทดสอบ เพื่อให้สามารถทำงานเป้นรอบสั้น ๆ ได้ดี
- แต่ละทีมสามารถทำงานร่วมกันได้ เช่น Developer และ Tester/QA ใช้เครื่องมือเดียวกันได้
- ความเหมาะสมในแต่ละ Platform เช่น Java สำหรับ Android, Swift/ObjectiveC สำหรับ iOS
- สามารถทดสอบได้ดีทั้ง Emulator และ Device จริง ๆ
- สามารถ integrate เข้ากับ IDE ที่ใช้พัฒนาได้
- สามารถ Record ได้
- Community
- ความนิยมที่ Github
และอาจจะมีเงื่อนไขอื่น ๆ ขึ้นมาอีกได้
ขึ้นอยู่กับความต้องการของระบบนั้น ๆ
คำถามต่อมาคือ Use case ของระบบมีอะไรบ้าง ?
และต้องการทดสอบมากน้อยเพียงใด ซับซ้อนขนาดไหน ?
ตัวอย่างเช่น
- ทดสอบผ่าน User Interface
- ทดสอบร่วมกับส่วนการทำงานต่าง ๆ ของ Mobile เช่น กล้อง, GPS และระบบ Network
- เวอร์ชันของ OS และ API ต่าง ๆ
- ต้องทดสอบบน Platform ต่าง ๆ ทั้ง Android และ iOS รวมทั้ง Web อีกด้วย
เครื่องมือที่น่าสนใจและได้รับความนิยมในปัจจุบัน
ประกอบไปด้วย
- Selenium ใช้สำหรับทดสอบระบบ web application ซึ่งได้รับความนิยมสูงมาก
- Appium ใช้สำหรับทดสอบ Mobile app ทั้ง Native และ Hybrid app
- Calabash ใช้สำหรับทดสอบ Mobile app ซึ่งมีรูปแบบการเขียน BDD (BehaviourDriven Development) พัฒนาด้วยภาษา Ruby
- Espresso ใช้สำหรับทดสอบ Android App ในปัจจุบันใน Android Studio สามารถทำการ Record Script การทดสอบได้แล้ว
- XCUITest ใช้สำหรับทดสอย iOS app ซึ่งมากับ XCode IDE
เมื่อนำเงื่อนไขและคำถามจากด้านบนมาพิจารณาแล้ว
แสดงผลดังรูป
ดังนั้นลองกลับมาตั้งคำถามและตอบตัวเราเองสิว่า
ระบบที่เรากำลังพัฒนาเป็นอย่างไร ?
มี use case การทำงานและใช้งานอย่างไร ?
ต้องการทดสอบอย่างไรบ้าง ?
จากนั้นก็ลองเลือกเครื่องมือและนำไปใช้ดูครับ