Download - Establishing an Agile Testing Culture
![Page 1: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/1.jpg)
AT4 Agile Development Concurrent Session 11/13/2014 10:00 AM
"Establishing an Agile Testing Culture"
Presented by:
Leigh Ishikawa TripAdvisor
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ [email protected] ∙ www.sqe.com
![Page 2: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/2.jpg)
With a career spanning more than two decades in various roles, Leigh Ishikawa facilitates change in how organizations view testing by establishing test frameworks and processes, and educating and building teams across multiple continents. In the past decade, Leigh has focused on building test cultures inside high velocity engineering teams. After spending a year and half creating test frameworks and coaching engineers on testing, Leigh is currently a developer on TripAdvisor’s mobile team.
![Page 3: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/3.jpg)
Establishing an testing culture
Leigh Ishikawa
![Page 4: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/4.jpg)
Agile Culture
• It’s not something you mandate for small segment of your population
• It’s something that every individual and process has to respect and uphold
• Must support organization’s vision – Some organizations are not meant for agile
![Page 5: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/5.jpg)
Where do we begin?
![Page 6: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/6.jpg)
Failures Observed
• Promises – Improve quality and customer satisfaction while
reducing development time
• (Trying to) replicate someone else’s culture – Bring a person from another company
• Using Agile as means to solely drive engineering productivity – Business continues it’s merry way
![Page 7: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/7.jpg)
Successes observed
• Agile(like) organizations have accepted the agile culture as a whole
• Agile(like) organizations apply agile to iteratively improve their overall organization as well as their engineering
• Agile(like) organizations value people and fundamentally practice the manifesto
![Page 8: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/8.jpg)
Agile Manifesto
• Individuals and interactions over processes and tools
• Working software over comprehensive documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan
• That is, while there is value in the items on the right, we value the items on the left more.
![Page 9: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/9.jpg)
Good reasons to adopt Agile
• Desire to make a better product – Better product != $$$
• Desire to have a better work environment – Attract and retain talent
![Page 10: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/10.jpg)
Bad reasons for using Agile
• Improve quality with little/no effort • Improve productivity with little/no effort • Put better process in place
– More monitoring – More metrics – Reduce cost - Move resources overseas
• Agile is just for engineers
![Page 11: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/11.jpg)
Testing
Are we there yet?
![Page 12: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/12.jpg)
Testing is hard
• Most companies struggle • Most never get to where they are really happy
with their testing • Most companies put tools in place that is
ignored and neglected • Many people think there’s a ‘secret recipe’
![Page 13: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/13.jpg)
Poor quality speaks of many things
• Indicator of bigger organizational problems – Either disconnect between staff and management
or staff who are disengaged
• If careless, could be a downward spiral – The more you focus on the wrong things, the
worse it gets
• Qualitative goals are hard to measure – And difficult to enforce correctly
![Page 14: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/14.jpg)
Automation
• Fails most of the time because people underestimate the difficulty – Hire/promote wrong (or bad) talent
• Treat testing as a second class citizen
– Desperately try to use existing resource • Most QA people can’t code and they shouldn’t either
– Buy expensive software/contracts who promises just that – Have a non SE design a test framework
• Your first/key hire often determines the fate
![Page 15: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/15.jpg)
Developers should test
• Good or bad intentions? • Good organizations are willing to attract and
allocate developers for testing projects • Bad organizations will mandate that testing
should happen (more or less) on developer’s personal time and shame them
• Bad organizations think testing just happens • Testing is an art
![Page 16: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/16.jpg)
Test Metrics
• Drive your teams with mandated metrics will lead you to failure – “The Logic of Failure”
• While trying to achieve immediate goals, they destroyed something crucial
• Metrics should be used as a means to observe and understand the state
![Page 17: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/17.jpg)
Metrics – Code Coverage
• Code coverage goals are, generally, a bad idea • That said, In Java (at the package level)
– 40% = Team is beginning to get grasp of testing – 60% = a sweet spot of where your test is getting a
good coverage • Percentage is meaningless without
understanding what is tested. Above % is based on team prioritizing what they are testing. (Ignore setters/getters, etc)
![Page 18: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/18.jpg)
You’ve heard this before
1. Hire the right people 2. Provide infrastructure
– CI, dashboards, etc. 3. Provide goals and visual aids
– Dashboards – Signs - No build break for ### days
4. Re-enforce the good behavior – Build breaks stops everything – Test failures = build breaks
![Page 19: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/19.jpg)
Reality
• You will hire the wrong person/people/consulting firm
• You will buy/build wrong infrastructure • You won’t know what metrics to measure (or
avoid) • ALL THE ABOVE DOESN’T MATTER
![Page 20: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/20.jpg)
Great testing culture is not
• Bugs • Metrics (Test coverage, customer surveys, etc) • Dashboards • Speed of your development
![Page 21: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/21.jpg)
Great Testing culture is
• Desire of individual and organization to build better product
• Open to new ideas • Willing to invest and try different ways to
make your software better through iterative approach
• Transparency within organization and your customers
![Page 22: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/22.jpg)
Your company is unique
Your company is a living entity filled with unique individuals. No two companies are alike and should try to be Each company has their strengths and weakness Understand what makes your company special
![Page 23: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/23.jpg)
Before you attempt to change
• Find your company’s strengths • Understand why your company works the way
they do • Figure out where you company wants to get to
and where it needs to • Iterate over various tools and process to make
improvements over long period of time
![Page 24: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/24.jpg)
Conclusion?
![Page 25: Establishing an Agile Testing Culture](https://reader033.vdocument.in/reader033/viewer/2022042818/55b6c496bb61eb03388b4766/html5/thumbnails/25.jpg)
To Establish a testing culture, you must grok organization’s culture and Agile Manifesto. You must practice agile manifesto at the
cultural level while preserving the core values of the organization