4. Automation Paradigms
Visual Programmatic
No interaction with Use application code to
application code interact with UI elements
Verify
Verify presence and state
appearance of UI
of UI elements
elements
Beware of code changes
Beware of intended
that don’t affect layout or
visual changes
appearance.
5. Automation Paradigms
Visual Programmatic
No interaction with Use application code to
application code interact with UI elements
Verify
Verify presence and state
appearance of UI
of UI elements
elements
Beware of code changes
Beware of intended
that don’t affect layout or
visual changes
appearance.
6. Automation Paradigms
Visual Programmatic
No interaction with Use application code to
application code interact with UI elements
Verify
Verify presence and state
appearance of UI
of UI elements
elements
Beware of code changes
Beware of intended
that don’t affect layout or
visual changes
appearance.
7. Automation Paradigms
Visual Programmatic
No interaction with Use application code to
application code interact with UI elements
Verify
Verify presence and state
appearance of UI
of UI elements
elements
Beware of code changes
Beware of intended
that don’t affect layout or
visual changes
appearance.
10. Not “can”, “how”
• Jailbreaking required
• Application code must be modified
• Functionality may be reduced
• As always, read the fine print
11. Device integration
• Multitouch gestures?
• Hardware controls?
- Screen lock, volume, etc.
• Alert invocation?
- New message, low battery, etc.
12. Other considerations
• Platform support
• Additional coding requirements
• Learning curve
• Compatibility with continuous integration
processes
• Additional capabilities
13. Personal observations
• No clear “best-in-class” tool for all
platforms
• Platform and device restrictions still
prevalent
• iOS: Try Instruments first, then consider
other tools
- Use folder name truncation bug (in EMC Mobile) as example of difference between the verification methods\n- Programmatic verification can also be selective: verify text, state, location, etc.\n- Last points refer to what will change more: the appearance of your UI, or how you code it?\n\n
- Use folder name truncation bug (in EMC Mobile) as example of difference between the verification methods\n- Programmatic verification can also be selective: verify text, state, location, etc.\n- Last points refer to what will change more: the appearance of your UI, or how you code it?\n\n
- Use folder name truncation bug (in EMC Mobile) as example of difference between the verification methods\n- Programmatic verification can also be selective: verify text, state, location, etc.\n- Last points refer to what will change more: the appearance of your UI, or how you code it?\n\n
- Use folder name truncation bug (in EMC Mobile) as example of difference between the verification methods\n- Programmatic verification can also be selective: verify text, state, location, etc.\n- Last points refer to what will change more: the appearance of your UI, or how you code it?\n\n
\n
- TestPlant’s “eggPlant” is an example for the first point.\n- FrogLogic’s “Squish” is example of second point, leads to build complexity.\n- Also bring up cloud solutions like DeviceAnywhere where you remotely access devices from a shared pool.\n
- Instruments can do a lot of these\n- Gestures are very important for mobile!\n
- Easy example for second point: Instruments, with its requirement for accessibility labels.\n- Learning curve isn’t just the scripting language, but also how the application is written.\n- examples of additional capabilities: screenshots, multiple scripting language support, movie recording, etc.\n