SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
W4
Agile Testing
5/1/2013 11:30:00 AM

Baking In Quality: The Evolving
Role of the Agile Tester
Presented by:
Dena Laterza
Agile Velocity

Brought to you by:

340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Dena Laterza
In software quality for seventeen years and currently a quality coach for Agile Velocity (AgileVelocity.com),
Dena Laterza became an agile enthusiast five years ago when the director of development brought in
agile coaches. The coaching succeeded - and so did the project! Dena has worked on applications in the
medical, lead management, contract management, project management, retail, and video-conferencing
domains - with both commercial and open-source test automation tools. She is continually learning and
mentoring others on automated testing tools and techniques for unit, integration, and GUI testing. Dena
lives and practices her craft in Austin, Texas.
BAKING QUALITY IN
The Evolving Role of the Agile Tester
Introduce yourself!
Talk to those around you. Introduce yourself.
What role do they play in software
development?
Illusion of Waterfall

80% Done??

Release
Requirements

Waterfall

Design
Development
QA
Working software is the primary
measure of progress

Sprint 2

Sprint 3

Sprint 4

Requirements

Requirements

Requirements

Requirements

Design

Design

Design

Design

Development

Development

Development

Development

QA

QA

QA

QA

Agile

Sprint 1

Copyright © 2013 Agile Velocity, LLC. All Rights Reserved.

Potentially Releasable
Product Increment

AGILE VELOCITY PROPRIETARY
Tear Down This Wall

Testers are integrated into Development
Image Source: http://www.thesniper.us
Copyright © 2013 Agile Velocity, LLC. All Rights Reserved.

AGILE VELOCITY PROPRIETARY
What is Testing in Agile?
Testing is embedded into the Definition of Done

Testing drives development
Test whenever possible throughout development
Agile testing is a team effort

Agile testing needs automation
http://www.agiletesting.info/what-is-agile-testing-112
Test automation is a
core agile practice.
- Lisa Crispin (Agile Testing)
The Test Automation Pyramid
Unit Tests
Test a class, function, or method in isolation
Test common, normal use
Test boundary cases for valid input
Test failure conditions (invalid input, exceptions)
http://starship.python.net/~tbryan/UnitTestTalk/slide2.html

Tom Bryan
Acceptance Tests
Verifies User Story meets expectations of the stakeholders
Test with full stack running

Easy to understand outside of Development
Validate API, UI, persistence layer (db)
Tests the system from the user’s perspective

Copyright © 2013 Agile Velocity, LLC. All Rights Reserved.

AGILE VELOCITY PROPRIETARY
Acceptance Test Example
Feature: Login

Wrong way

Scenario: Tests login with invalid credentials
Given I am on the Login screen
When I enter "user1" in the username field
And I enter "mypassword" in the password field
And I click the Login button
Then I should see the error message "Username/password is invalid"

Right way

Scenario: Tests login with invalid credentials
Given I am on the Login screen
When I enter invalid credentials
Then I am not logged in and a meaningful error message is displayed
More Examples
Feature: Fixed amount withdrawal

Scenario: Tests withdrawing a fixed amount
Given I have $1000 in my account
When I withdraw a fixed amount of $200
Then my account balance is $800
Scenario: Tests attempting withdrawal of a fixed amount when balance is too low
Given I have $200 in my account
When I withdraw a fixed amount of $300
Then I see “Insufficient funds to withdraw this amount.” Error
Tests Are a Safety Net

Image Source: drawingwater.org
Copyright © 2013 Agile Velocity, LLC. All Rights Reserved.

AGILE VELOCITY PROPRIETARY
What is the cost of finding a
defect late?
20 Developers making 10 code changes a day

1 Day =
200 Changes

2 Weeks = 2,000
Changes

Images Source: http://wendistry.com/wp-content/uploads/2010/03/haystack.jpg

2 Months = 8,000
Changes
Image Source: innovativelearningdesignes.ca
As a user planning a trip, I want to know the last
date I can change my flight without being
charged a fee, so that I can avoid incurring a
charge.
Acceptance Criteria:
1. User must be logged in to create or edit a reservation
2. User can enter their fly date when creating or editing a
reservation
3. Last date to change flight without a fee is displayed to the
right of the fly date
4. Premium users can change their flight up to 3 days prior
5. All other users can change their flight up to two weeks prior
6. Date formats are based on language in Browser
Push Testing Down
• Strategize as a team on the
testing of each story/feature

Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
Push Testing Down
• Strategize as a team on the
testing of each story/feature
• Understand what can/cannot
be tested at each level

Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
Push Testing Down
• Strategize as a team on the
testing of each story/feature
• Understand what can/cannot
be tested at each level
• Ensure entire team gains
value from all automated
tests

Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
Push Testing Down
• Strategize as a team on the
testing of each story/feature
• Understand what can/cannot
be tested at each level
• Ensure entire team gains
value from all automated
tests
• Minimize duplication

Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
Test-Driven Development
Add a
test.

Run it.
See it fail.

Write
code.

Rinse, repeat

Refactor.

Run test.
See it
pass.

Image Source: http://code.dortikum.net
Acceptance Test-Driven
Development

Involve the • Product Owner
“Power of • Developer
• Tester
3”
Describe • Use plain words – “Tests
Application that the user cannot log in
with an invalid password”
Behavior
Copyright © 2013 Agile Velocity, LLC. All Rights Reserved.

AGILE VELOCITY PROPRIETARY
Automation Framework Strategy







Design for maintainability
Decide on execution frequency
Decide max execution time
Whole team owns
Whole team gets value
Make tests part of Continuous Integration

Image Source: www.cwrmobility.com
What Not To Automate

Everything
•On legacy systems, start with a smoke test
•Automate what gives the “most bang for your buck”
•Execution frequency is key

GUI
•Especially if the GUI is in flux
•Can tests be covered at a lower level?

Low priority functionality
•Non-mission critical
•Not frequently used
•Very little code churn
Baking quality in puts
YOU
in the driver’s seat!
Automated tests don’t find bugs, people do!
Thank You!
I look forward to improving this based on your
feedback.
Agile Velocity
Austin, TX

We provide Agile Training, Coaching, & Implementation Services
in the following areas:
Organization - Culture, Structure, Lean, Leadership, Enterprise Optimization
Product - Value Focus, Customer Needs, Prioritization, Planning, Portfolio, Strategy
Team - Scrum, Kanban, Quality, Speed to Market, Tool Selection & Implementation
Technical Practices - Test Automation, Test Driven Development (TDD), Continuous
Integration/ Delivery

Implementation - SaaS, Cloud, Architecture, Development, QA, Product Management
BDD Resources







http://jbehave.org/ (Java)
http://www.specflow.org/ (.NET)
http://cukes.info/ (Ruby)
The Cucumber Book: Behaviour-Driven
Development for Testers and Developers
by Matt Wynne and Aslak Hellesøy

Contenu connexe

Tendances

Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
Applitools
 
Integration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaSIntegration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaS
Anand Bagmar
 

Tendances (20)

GAAD-Deque-Accessibility-webinar
GAAD-Deque-Accessibility-webinarGAAD-Deque-Accessibility-webinar
GAAD-Deque-Accessibility-webinar
 
Agile Testing Dilemmas
Agile Testing DilemmasAgile Testing Dilemmas
Agile Testing Dilemmas
 
What is Agile Testing? How does Automation help?
What is Agile Testing? How does Automation help?What is Agile Testing? How does Automation help?
What is Agile Testing? How does Automation help?
 
Say NO To (More) Selenium Tests
Say NO To (More) Selenium TestsSay NO To (More) Selenium Tests
Say NO To (More) Selenium Tests
 
To Deploy or Not-To-Deploy - decide using TTA's Trend & Failure Analysis
To Deploy or Not-To-Deploy - decide using TTA's Trend & Failure AnalysisTo Deploy or Not-To-Deploy - decide using TTA's Trend & Failure Analysis
To Deploy or Not-To-Deploy - decide using TTA's Trend & Failure Analysis
 
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
 
Shift left-csun-sagar-barbhaya
Shift left-csun-sagar-barbhayaShift left-csun-sagar-barbhaya
Shift left-csun-sagar-barbhaya
 
Building an Accessible Component Library
Building an Accessible Component LibraryBuilding an Accessible Component Library
Building an Accessible Component Library
 
UI Automation Quirks
UI Automation QuirksUI Automation Quirks
UI Automation Quirks
 
How to scale your Test Automation
How to scale your Test AutomationHow to scale your Test Automation
How to scale your Test Automation
 
Visual Validation - The Missing Tip of the Automation Pyramid
Visual Validation - The Missing Tip of the Automation PyramidVisual Validation - The Missing Tip of the Automation Pyramid
Visual Validation - The Missing Tip of the Automation Pyramid
 
Integration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaSIntegration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaS
 
The Future of Web Apps
The Future of Web AppsThe Future of Web Apps
The Future of Web Apps
 
Kaiser Permanente CSUN 2018
Kaiser Permanente CSUN 2018Kaiser Permanente CSUN 2018
Kaiser Permanente CSUN 2018
 
Building a Great AEM Team: Time Warner Cable's Journey
Building a Great AEM Team: Time Warner Cable's JourneyBuilding a Great AEM Team: Time Warner Cable's Journey
Building a Great AEM Team: Time Warner Cable's Journey
 
Enabling CD in Enterprises with Testing
Enabling CD in Enterprises with TestingEnabling CD in Enterprises with Testing
Enabling CD in Enterprises with Testing
 
Enabling CD in Enterprises with Testing
Enabling CD in Enterprises with TestingEnabling CD in Enterprises with Testing
Enabling CD in Enterprises with Testing
 
Testing Hourglass at Jira Frontend - by Alexey Shpakov, Sr. Developer @ Atlas...
Testing Hourglass at Jira Frontend - by Alexey Shpakov, Sr. Developer @ Atlas...Testing Hourglass at Jira Frontend - by Alexey Shpakov, Sr. Developer @ Atlas...
Testing Hourglass at Jira Frontend - by Alexey Shpakov, Sr. Developer @ Atlas...
 
Eclipse UI automation
Eclipse UI automationEclipse UI automation
Eclipse UI automation
 
Anand Bagmar - Behavior Driven Testing (BDT) in Agile
Anand Bagmar - Behavior Driven Testing (BDT) in AgileAnand Bagmar - Behavior Driven Testing (BDT) in Agile
Anand Bagmar - Behavior Driven Testing (BDT) in Agile
 

En vedette

En vedette (16)

Maybe We Don’t Have to Test It
Maybe We Don’t Have to Test ItMaybe We Don’t Have to Test It
Maybe We Don’t Have to Test It
 
W7
W7W7
W7
 
Keynote: The Mismeasure of Software: The Last Talk on Measurement You’ll Ever...
Keynote: The Mismeasure of Software: The Last Talk on Measurement You’ll Ever...Keynote: The Mismeasure of Software: The Last Talk on Measurement You’ll Ever...
Keynote: The Mismeasure of Software: The Last Talk on Measurement You’ll Ever...
 
Test-Driven Development for Developers: Plain and Simple
Test-Driven Development for Developers: Plain and SimpleTest-Driven Development for Developers: Plain and Simple
Test-Driven Development for Developers: Plain and Simple
 
Deadlines Approaching? Budgets Cut? How to Keep Your Sanity
Deadlines Approaching? Budgets Cut? How to Keep Your SanityDeadlines Approaching? Budgets Cut? How to Keep Your Sanity
Deadlines Approaching? Budgets Cut? How to Keep Your Sanity
 
Leading Change—Even If You’re Not in Charge
Leading Change—Even If You’re Not in ChargeLeading Change—Even If You’re Not in Charge
Leading Change—Even If You’re Not in Charge
 
Testing with an Accent: Internationalization Testing
Testing with an Accent: Internationalization TestingTesting with an Accent: Internationalization Testing
Testing with an Accent: Internationalization Testing
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
 
Getting Ready for Your Agile Adventure
Getting Ready for Your Agile AdventureGetting Ready for Your Agile Adventure
Getting Ready for Your Agile Adventure
 
Collaboration Techniques: Combining New Approaches with Ancient Wisdom
Collaboration Techniques: Combining New Approaches with Ancient WisdomCollaboration Techniques: Combining New Approaches with Ancient Wisdom
Collaboration Techniques: Combining New Approaches with Ancient Wisdom
 
Production Performance Testing in the Cloud
Production Performance Testing in the CloudProduction Performance Testing in the Cloud
Production Performance Testing in the Cloud
 
Demystifying the Role of Product Owner
Demystifying the Role of Product OwnerDemystifying the Role of Product Owner
Demystifying the Role of Product Owner
 
Key Test Design Techniques
Key Test Design TechniquesKey Test Design Techniques
Key Test Design Techniques
 
How to Break Software: Robustness Edition
How to Break Software: Robustness EditionHow to Break Software: Robustness Edition
How to Break Software: Robustness Edition
 
A Big Helping of DevOps with Career Advice on the Side
A Big Helping of DevOps with Career Advice on the SideA Big Helping of DevOps with Career Advice on the Side
A Big Helping of DevOps with Career Advice on the Side
 
Implementing DevOps and Making It Stick
Implementing DevOps and Making It StickImplementing DevOps and Making It Stick
Implementing DevOps and Making It Stick
 

Similaire à Baking In Quality: The Evolving Role of the Agile Tester

Chandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_Oracle
Chandan Jai
 
Software Test Engineer with 3.6 years of experience
Software Test Engineer with 3.6 years of experienceSoftware Test Engineer with 3.6 years of experience
Software Test Engineer with 3.6 years of experience
vijaya lakshmi
 

Similaire à Baking In Quality: The Evolving Role of the Agile Tester (20)

Thomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdfThomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdf
 
Testing in Agile Development
Testing in Agile DevelopmentTesting in Agile Development
Testing in Agile Development
 
Tune Agile Test Strategies to Project and Product Maturity
Tune Agile Test Strategies to Project and Product MaturityTune Agile Test Strategies to Project and Product Maturity
Tune Agile Test Strategies to Project and Product Maturity
 
QA Prayag
QA PrayagQA Prayag
QA Prayag
 
! Testing for agile teams
! Testing for agile teams! Testing for agile teams
! Testing for agile teams
 
Seven Keys to Navigating Your Agile Testing Transition
Seven Keys to Navigating Your Agile Testing TransitionSeven Keys to Navigating Your Agile Testing Transition
Seven Keys to Navigating Your Agile Testing Transition
 
Resume 2 year
Resume  2 yearResume  2 year
Resume 2 year
 
Failure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature DeliveryFailure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature Delivery
 
A Modern Dive into QA Automation and Beyond
A Modern Dive into QA Automation and BeyondA Modern Dive into QA Automation and Beyond
A Modern Dive into QA Automation and Beyond
 
Webapp Automation Testing of performance marketing and media platform
Webapp Automation Testing of performance marketing and media platformWebapp Automation Testing of performance marketing and media platform
Webapp Automation Testing of performance marketing and media platform
 
The Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User AdvocacyThe Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User Advocacy
 
Resume
ResumeResume
Resume
 
Chandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_Oracle
 
Why Automation Fails—in Theory and Practice
Why Automation Fails—in Theory and PracticeWhy Automation Fails—in Theory and Practice
Why Automation Fails—in Theory and Practice
 
Justin Ison
Justin IsonJustin Ison
Justin Ison
 
Software Test Engineer with 3.6 years of experience
Software Test Engineer with 3.6 years of experienceSoftware Test Engineer with 3.6 years of experience
Software Test Engineer with 3.6 years of experience
 
QA_3.6 yrs
QA_3.6 yrsQA_3.6 yrs
QA_3.6 yrs
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
 
Seven Keys to Navigating Your Agile Testing Transition
Seven Keys to Navigating Your Agile Testing TransitionSeven Keys to Navigating Your Agile Testing Transition
Seven Keys to Navigating Your Agile Testing Transition
 
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingAgile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing
 

Plus de TechWell

Plus de TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

Baking In Quality: The Evolving Role of the Agile Tester

  • 1. W4 Agile Testing 5/1/2013 11:30:00 AM Baking In Quality: The Evolving Role of the Agile Tester Presented by: Dena Laterza Agile Velocity Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  • 2. Dena Laterza In software quality for seventeen years and currently a quality coach for Agile Velocity (AgileVelocity.com), Dena Laterza became an agile enthusiast five years ago when the director of development brought in agile coaches. The coaching succeeded - and so did the project! Dena has worked on applications in the medical, lead management, contract management, project management, retail, and video-conferencing domains - with both commercial and open-source test automation tools. She is continually learning and mentoring others on automated testing tools and techniques for unit, integration, and GUI testing. Dena lives and practices her craft in Austin, Texas.
  • 3. BAKING QUALITY IN The Evolving Role of the Agile Tester
  • 4. Introduce yourself! Talk to those around you. Introduce yourself. What role do they play in software development?
  • 5. Illusion of Waterfall 80% Done?? Release Requirements Waterfall Design Development QA
  • 6. Working software is the primary measure of progress Sprint 2 Sprint 3 Sprint 4 Requirements Requirements Requirements Requirements Design Design Design Design Development Development Development Development QA QA QA QA Agile Sprint 1 Copyright © 2013 Agile Velocity, LLC. All Rights Reserved. Potentially Releasable Product Increment AGILE VELOCITY PROPRIETARY
  • 7. Tear Down This Wall Testers are integrated into Development Image Source: http://www.thesniper.us Copyright © 2013 Agile Velocity, LLC. All Rights Reserved. AGILE VELOCITY PROPRIETARY
  • 8. What is Testing in Agile? Testing is embedded into the Definition of Done Testing drives development Test whenever possible throughout development Agile testing is a team effort Agile testing needs automation http://www.agiletesting.info/what-is-agile-testing-112
  • 9. Test automation is a core agile practice. - Lisa Crispin (Agile Testing)
  • 11. Unit Tests Test a class, function, or method in isolation Test common, normal use Test boundary cases for valid input Test failure conditions (invalid input, exceptions) http://starship.python.net/~tbryan/UnitTestTalk/slide2.html Tom Bryan
  • 12. Acceptance Tests Verifies User Story meets expectations of the stakeholders Test with full stack running Easy to understand outside of Development Validate API, UI, persistence layer (db) Tests the system from the user’s perspective Copyright © 2013 Agile Velocity, LLC. All Rights Reserved. AGILE VELOCITY PROPRIETARY
  • 13. Acceptance Test Example Feature: Login Wrong way Scenario: Tests login with invalid credentials Given I am on the Login screen When I enter "user1" in the username field And I enter "mypassword" in the password field And I click the Login button Then I should see the error message "Username/password is invalid" Right way Scenario: Tests login with invalid credentials Given I am on the Login screen When I enter invalid credentials Then I am not logged in and a meaningful error message is displayed
  • 14. More Examples Feature: Fixed amount withdrawal Scenario: Tests withdrawing a fixed amount Given I have $1000 in my account When I withdraw a fixed amount of $200 Then my account balance is $800 Scenario: Tests attempting withdrawal of a fixed amount when balance is too low Given I have $200 in my account When I withdraw a fixed amount of $300 Then I see “Insufficient funds to withdraw this amount.” Error
  • 15. Tests Are a Safety Net Image Source: drawingwater.org Copyright © 2013 Agile Velocity, LLC. All Rights Reserved. AGILE VELOCITY PROPRIETARY
  • 16. What is the cost of finding a defect late? 20 Developers making 10 code changes a day 1 Day = 200 Changes 2 Weeks = 2,000 Changes Images Source: http://wendistry.com/wp-content/uploads/2010/03/haystack.jpg 2 Months = 8,000 Changes
  • 18. As a user planning a trip, I want to know the last date I can change my flight without being charged a fee, so that I can avoid incurring a charge. Acceptance Criteria: 1. User must be logged in to create or edit a reservation 2. User can enter their fly date when creating or editing a reservation 3. Last date to change flight without a fee is displayed to the right of the fly date 4. Premium users can change their flight up to 3 days prior 5. All other users can change their flight up to two weeks prior 6. Date formats are based on language in Browser
  • 19. Push Testing Down • Strategize as a team on the testing of each story/feature Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
  • 20. Push Testing Down • Strategize as a team on the testing of each story/feature • Understand what can/cannot be tested at each level Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
  • 21. Push Testing Down • Strategize as a team on the testing of each story/feature • Understand what can/cannot be tested at each level • Ensure entire team gains value from all automated tests Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
  • 22. Push Testing Down • Strategize as a team on the testing of each story/feature • Understand what can/cannot be tested at each level • Ensure entire team gains value from all automated tests • Minimize duplication Image: http://www.adp-ascensores.com/ascensores-alicante-promocion/
  • 23. Test-Driven Development Add a test. Run it. See it fail. Write code. Rinse, repeat Refactor. Run test. See it pass. Image Source: http://code.dortikum.net
  • 24. Acceptance Test-Driven Development Involve the • Product Owner “Power of • Developer • Tester 3” Describe • Use plain words – “Tests Application that the user cannot log in with an invalid password” Behavior Copyright © 2013 Agile Velocity, LLC. All Rights Reserved. AGILE VELOCITY PROPRIETARY
  • 25. Automation Framework Strategy       Design for maintainability Decide on execution frequency Decide max execution time Whole team owns Whole team gets value Make tests part of Continuous Integration Image Source: www.cwrmobility.com
  • 26. What Not To Automate Everything •On legacy systems, start with a smoke test •Automate what gives the “most bang for your buck” •Execution frequency is key GUI •Especially if the GUI is in flux •Can tests be covered at a lower level? Low priority functionality •Non-mission critical •Not frequently used •Very little code churn
  • 27. Baking quality in puts YOU in the driver’s seat!
  • 28. Automated tests don’t find bugs, people do!
  • 29. Thank You! I look forward to improving this based on your feedback.
  • 30. Agile Velocity Austin, TX We provide Agile Training, Coaching, & Implementation Services in the following areas: Organization - Culture, Structure, Lean, Leadership, Enterprise Optimization Product - Value Focus, Customer Needs, Prioritization, Planning, Portfolio, Strategy Team - Scrum, Kanban, Quality, Speed to Market, Tool Selection & Implementation Technical Practices - Test Automation, Test Driven Development (TDD), Continuous Integration/ Delivery Implementation - SaaS, Cloud, Architecture, Development, QA, Product Management
  • 31. BDD Resources     http://jbehave.org/ (Java) http://www.specflow.org/ (.NET) http://cukes.info/ (Ruby) The Cucumber Book: Behaviour-Driven Development for Testers and Developers by Matt Wynne and Aslak Hellesøy