test automation - pathway for building and sustaining agile teams
TRANSCRIPT
www.unicomlearning.com
India Agile Week-2013 25th Oct 2013 - Bengaluru
Building and Sustaining Agile Teams Through Test Automation
Mahesh V G
Technical Manager
Mahindra Comviva
www.agileinbusiness.com
www.unicomlearning.com
“Building and Sustaining Agile Teams”
Pathway for BEING AGILE
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com Take Away - I
UNICOM Presents
India Agile Week-2013
Understand Context Of Operation
• Is there need for being Agile ?
• How agile (non-agile) are we today ?
• How do we measure progress ?
www.unicomlearning.com
Our World
Understanding Context of Operations
UNICOM Presents
India Agile Week-2013
Consumers Business Needs Environment
www.unicomlearning.com
Our Goals –
Engineering teams strived for…
UNICOM Presents
India Agile Week-2013
On Time Delivery Quality
www.unicomlearning.com
Our Concerns –
Hangover lessons and sleepless nights…
UNICOM Presents
India Agile Week-2013
Delayed Deliveries Quality
www.unicomlearning.com
Opportunity
UNICOM Presents
India Agile Week-2013
•Heterogeneous Software
•Heterogeneous Environments
•Legacy Products
•Conditioned Minds (Not my problem or it is
always done this way)
•Non productive labor
•Insecurity
•Unpredictable schedules
•Non-release mode
•Multiple Stakeholder
•Structural Complexities
www.unicomlearning.com
Our Teams Agile Journey…
UNICOM Presents
India Agile Week-2013
How do we be Agile ?
Why be Agile ?
What’s Agile ?
www.unicomlearning.com
Agile Manifesto – Value Driven
UNICOM Presents
India Agile Week-2013
Process and tools Individuals and
interactions over
Following a plan Responding to change over
Source: www.agilemanifesto.org
Comprehensive documentation
Working software over
Contract negotiation Customer collaboration over
www.unicomlearning.com Take Away - II
UNICOM Presents
India Agile Week-2013
Iterate Agile adoption incrementally
• Focus on key practices easy to adopt
• Review the outcome of adoption and adapt
www.unicomlearning.com
Adopting Agile Methods and Practices…
UNICOM Presents
India Agile Week-2013
Source: Version One 7th Annual Agile Survey
www.unicomlearning.com
Agile Methodologies – suitable for us
UNICOM Presents
India Agile Week-2013
Scrum
XP Kanban
MA
NA
GEM
ENT
TECHNICAL PRACTICES
www.unicomlearning.com
First Scrum Team and its Journey
UNICOM Presents
India Agile Week-2013
Sprint # Planned
Scenarios Accomplished
Scenarios
First 500 110
Second 350 391
Third 250 245
Fourth 300 310
Total 1400 1056
www.unicomlearning.com
Initial Perceptions….
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Being Agile – working with Legacy
Products
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Change is Hard – Automation as Escape Velocity
UNICOM Presents
India Agile Week-2013
Source: Robin Sharma’s EAF program
www.unicomlearning.com Take Away - III
UNICOM Presents
India Agile Week-2013
Measure Quality early– setup CI with metrics system
• How healthy is the code?
• How matured is the agile practice ?
• Adopt tools that help measure quality
• CI – jenkins
• Code Quality – Sonar/Findbugs/PMD
www.unicomlearning.com What to be measured ?
UNICOM Presents
India Agile Week-2013
Code Quality Complexity
Size of Product/Project
Cohesiveness
Coupling
Code Coverage
Code Smells
Automated tests
www.unicomlearning.com Automation - a step towards technical excellence
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com Involve motivated individuals
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Legacy Code - Initial metrics
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Continuous Integration with Code Metrics
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Measuring Agility.. How did we progress ?
UNICOM Presents
India Agile Week-2013
Source: ThoughtWorks Agility Assessment results of our team
www.unicomlearning.com Take Away - IV
UNICOM Presents
India Agile Week-2013
Automate tests
• Automate user acceptance tests (UAT)
• Identify and adapt test tools
• Build re-usable frameworks
www.unicomlearning.com
Where to Begin ?
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Software Testing – Quality to stake holders
UNICOM Presents
India Agile Week-2013
26
For Engineers To Customers
GUI and System Tests (Validation Group)
Functional Tests (Product Units)
Unit Tests (Product Units)
GUI Tests
(High Access and Visibility)
Functional Tests (Medium
Visibility)
Unit Tests (Low
Visibility)
www.unicomlearning.com
Partner for Tools and Tailor
UNICOM Presents
India Agile Week-2013
• Getting out of DIY syndrome
• Go for lightweight tools and Adapt
• Cover Risks
• Win-Win Partner relationship
www.unicomlearning.com
Tools Evaluation
UNICOM Presents
India Agile Week-2013
Feature Selenium Sahi OS (Open
Source) Sahi Pro QTP Jameleon
TestingAnywhere
Watir
Developed into Java Java Java .Net Java Java Ruby
Record and Play Only on Firefox All browsers All browsers Only on IE No Yes No
Playback Yes Yes Yes Yes Yes Yes Yes
Brower support All All All IE IE All All OS/Platform support All All All Windows Windows All All
Language Multiple Javascript, Java, Ruby
Javascript, Java, Ruby VB XML Java,.Net,C++ Ruby
Usability Easy Easy Easy Easy Easy Easy Easy Automation/Maintenance difficulty level Easy Easy Easy Easy Easy Easy Easy
Exception handling Yes
Yes. Has recovery feature & Call back function.
Yes. Has recovery feature & Call back function. Yes Yes Yes Yes
Parallel Testing Yes Yes Yes No No Yes Yes
www.unicomlearning.com
Partnerships – make vs buy
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Web Test Automation - using sahi
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Subscriber Creation Call Flow
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Automation benefits
UNICOM Presents
India Agile Week-2013
Automation execution takes 76 minutes to create subscriber as compared to 2 Person days effort to create it manually
www.unicomlearning.com
Success Stories.. Published
UNICOM Presents
India Agile Week-2013
Unit Solution Test Scenarios Manual
Execution
Automation
Execution
Savings
Unit-1 P1 1500 40.5 Person
Days
15 Hours 95%
Unit-2 P2 230 7 Person
Days
1 Hour 15
Minutes
97%
Unit-3 P3 142 4 Person
Days
40 Minutes 96%
Unit-4 P4 119 3 Person
Days
7 Minutes 99%
Unit-5 P5 25 1 Person Day 2 Minutes 99%
www.unicomlearning.com
Functional Testing – ROBOT / RIDE / STAF-
STAX
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com
Functional Test Automation - using RIDE
UNICOM Presents
India Agile Week-2013
www.unicomlearning.com Take Away - V
UNICOM Presents
India Agile Week-2013
Care for clean code
• Practice TDD (Red Green Clean culture)
• Unit test for reusable modules
• Encourage constant refactoring during change requests/bug fixes
www.unicomlearning.com
Adoption of TDD and Unit Testing - WIP
UNICOM Presents
India Agile Week-2013
Frameworks Used Junit Framework for Java check framework for C CppUnit/XppUnit for applications done in C++/PHP etc Practice Measuring code coverage Test Driven Development for new code written. Refactoring of legacy code – “Extract method” most widely used
www.unicomlearning.com
Our Journey.. Cheetah way (Agile Hunter)
UNICOM Presents
India Agile Week-2013
Agility and rapid acceleration vs. Speed.
Course Corrections and adapting to context during journey
Source: New York Times
www.unicomlearning.com
Recap - Key Take Away
UNICOM Presents
India Agile Week-2013
1. Understand Context Of Operation
• Is there need for being Agile ?
• How agile (non-agile) are we today ?
• How do we measure progress ?
2. Iterate Agile adoption incrementally
• Focus on key practices easy to adopt
• Review the outcome of adoption and adapt
3. Measure Quality early– setup CI with
metrics system
• How healthy is the code?
• How matured is the agile practice ?
• Adopt tools that help measure quality
4. Automate tests
• Automate user acceptance tests (UAT)
• Identify and adapt test tools
• Build re-usable frameworks
5. Care for clean code
• Practice TDD (Red Green Clean culture)
• Unit test for reusable modules
• Encourage constant refactoring during change requests/bug fixes
www.unicomlearning.com
India Agile Week-2013 Organized by
UNICOM Trainings & Seminars Pvt. Ltd.
Mahesh V G