Oplægget blev holdt ved et seminar i InfinIT-interessegruppen Softwaretest den 11. september 2013. Læs mere om interessegruppen her: http://infinit.dk/dk/interessegrupper/softwaretest/softwaretest.htm
2. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
3. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
7. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
8.
9. Waterfall approach for testing
•
•
•
•
•
•
Party
Project Definition
Project Realization
Testing (used a project buffer)
Deployment to production
Party
Result: low return on investment on testing effort
10. Test Case Implementation & Execution –
ROI?
•
Reusablity across
•
•
•
•
•
•
Independent of
•
•
•
•
Different mobile OS versions (new)
Different mobile OS vendors (new)
Different hardware (new)
Different versions of the app under test
Different browser
Screen resolution
Keyboards
Localization
Re-use of existing
•
•
•
Testing tools
Automation expertise
Scripting / Programming language
11. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
13. Jamo Solutions - Mission
The mission of Jamo Solutions is to provide
technology and expertise that enables
successful testing and monitoring solutions
around the mobile end user experience.
14. Object Attributes & Identification
•
Objects are identified by a unique
combination of attributes
• This combination can be set seperately for
every object or globaly for all objects of the
same type
• Access to all attributes of an object
•
Key advantage of object recognition
based approach
•
Depending on the types of application you
are creating — mobile
browser, native, hybrid and the level of
interactivity (use of gesture sets, access to
platform features), this lower-level access
will be the stronger path.
Gartner, Magic Quadrant for Integrated Software Suites, 11 July
2013
15. A typical UI
Consider the differences between testing
this application using OCR (screen
scraping/bitmap recognition) and object
recognition based approach
•
•
All buttons share the same label
All buttons share the same form
All buttons share the same size
•
Object recognition: direct access
•
•
•
•
Reliable
Reusable
OCR: Need for more intelligence
•
•
Error prone
Reduced reusability
17. Native, Web & Hybrid Applications
•
•
•
Native app: packaged application
deployed to the phone
Web app: accessed through the
browser
Hybrid app: native app with
embedded web views
Native App
•
•
•
•
•
Java
C#
C++
Objective C
....
Hybrid
App
Web App
•
•
•
•
HTML
CSS
Java Script
Runs inside a
browser
18. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
19. Functional Testing - Overview
Mobile Test Automation
• M-eux Test allows you to automate your mobile testing
scenarios
• Based on future-proof, object recognition based technology (no
jail breaking / rooting, no OCR, iOS7 compatible)
• Wide range of support across mobile platforms
(iOS, Android, Windows, BlackBerry)
21. Functional Testing - Overview
Integration with exiting tools & processes
• Integration with industry-standard development tools (HP
UTP/QTP, Microsoft,...)
• Integration with application life cycle management tools (HP
ALM/QC, Microsoft, IBM RQM, ...)
• Allows effective re-use of and integration with your existing
testing processes and tools
• Minimizes the total investment, increases the ROI
22. Browser-Based Functional Testing
What?
• Allows you to automate the testing of web applications on
mobile platforms
• Based on our proven object recognition based technology
• Allows for seamless cross-browser, cross-platform, crossdevice scripting
• You test the real app; on real devices or simulators/emulators
25. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
30. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
31. Best Practices Management
•
Re-use scripting best practice from PC world:
•
•
•
•
•
Descriptive programming
Exception handling
Object reconfiguration
Frameworks ( Linear framework, function decomposion
framework, keyword-driven framework, data-driven framework, etc.)
Best pracitices on setup
•
•
Lab setup
Scripting setup
31
32. Agenda
•
The Mobile Market
• Testing for Desktop and Mobile Apps: Now and Then
• Methods for Test Automation
• Functional Testing
• Performance Testing
• Frameworks
• Conclusion
33. Conclusion
•
•
•
•
•
•
Let your test be reproducable
Manage frequent test cycles
Create re-usable tests
Object recognition is the way to go
Change your system and app as less as possbile by
instrumentation
Note that the app is not the only thing to test