Scaling API-first – The story of a global engineering organization
SymbioWare selenium conf SF 2011
1. Extending and Enhancing
Standard Selenium
Vadim Rosenberg
SymbioWare Inc.
vrosenberg@symbioware.com
2. Why Extending Selenium?
• The goal:
– Make Selenium tests usable
by non-programmers
– Broader adoption of Selenium within organization
beyond the initial high-skill QA team
– Reuse Selenium scripts in wider variety of tools
3. Selenium as a QA Platform: Pros and Cons
• What Selenium has:
– A powerful API-based QA platform
– De-facto Automated QA standard
• What Selenium needs:
– High skill set (e.g., programming)
– Full cycle test management
– Custom coding for non-native features
4. Reducing the Skill Requirement
• Plain Selenium:
– Based on API
– Requires a “driver program” to implement conditions,
loops, flow control
– Build another program to test the original program
• Extending Selenium:
– Provide “programming” GUI with high level of abstraction
– Import Selenium script into higher level of abstraction IDE
– Mix and match Selenium and native 3-rd party commands
11. Implementing Full Cycle Test Management
• Plain Selenium:
– Based on API
– Does not have built-in test management features
• Extended Selenium:
– Requirements management
– Test cases management, versioning, export/import
– Environment management
– Notifications
– Advanced reporting and analytics
– Issue tracking, task assignment
20. SymbioTeam On-Demand
• Automated functional testing
• In-production business logic verification
• User experience monitoring
• for Web, Windows, and other platforms