Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
blog.eviltester.com/2017/10/what‐is‐regression‐testing‐
software.html
What is Regression Testing?
Alan Richardson
www.eviltester.com/agile
www.compendiumdev.co.uk
@eviltester
blog.eviltester.c...
TLDR; Regression Testing is a Legacy
term for testing when a risk of
unexpected impact exists after making
changes.
@EvilT...
What is Regression?
a former or less developed state.
a more primitive state.
@EvilTester 4
What is regression testing?
A system might regress to a former or less
developed state. A more primitive state.
Regression...
Why would we do regression testing?
Because the change might have had an
unexpected impact on another part of the system.
...
When do we do regression testing?
Q: When do we do regression testing?
A: Pretty much whenever we make a change.
We make a...
_Just to be clear, "A Change". Any kind of
change.
Code, infrastructure, environment, libraries,
browsers that users use, ...
How do we do regression testing?
The legacy view of how we do regression testing is:
"Well. We've already tested it. So wh...
Essentially what we're talking about is a
subset of testing in an area that is not
directly related to the area we've
chan...
How did this concept arise?
Waterfall
Too many changes to test in a short period of time
Control changes
Re‐run rather tha...
The problem with Regression Testing?
The system does not actually regress.
The system does not move to a former state or a...
Testing can be viewed as being "all"
about risk
When we use the term Regression Testing. We're obscuring the risk.
We're j...
Redefine Regression Testing in terms of
risk
"there's a risk that a change has had an
unexpected impact on another part of...
How else could we mitigate the risk of
unexpected change?
We don't have to use testing as our only mitigation strategy:
ch...
Any time we're faced with uncertainty.
The only thing that really deals with
uncertainty, is a new set of analysis. A
new ...
Exploratory testing does that by default
comes up with new ideas,
looks at the risks,
looks at the system,
figures out how...
Redefine your terminology, so that
you're not just relying on old legacy
notions of "I'll just rerun my stuff again".
@Evi...
Look at risk, and adapt your process: your test process, your testing
ideas and approach, to the actual needs that are in ...
BIO ‐ Alan Richardson
Alan Richardson has more than twenty years of professional IT
experience, working as a programmer an...
Alan Richardson ﴾www﴿
www.compendiumdev.co.uk
www.eviltester.com
www.seleniumsimplified.com
www.javafortesters.com
uk.link...
Follow
Linkedin ‐ uk.linkedin.com/in/eviltester
Twitter ‐ twitter.com/eviltester
Instagram ‐ instagram.com/eviltester
Face...
Upcoming SlideShare
Loading in …5
×

What is Regression Testing?

1,629 views

Published on

Software Testing Terms Defined. Answering the FAQ "What is Regression Testing?"

- What is Regression Testing?
- How to do Regression Testing?
- Why do we do Regression Testing?
- How to re-think Regression Testing in terms of Risk?

Published in: Software
  • Be the first to comment

What is Regression Testing?

  1. 1. blog.eviltester.com/2017/10/what‐is‐regression‐testing‐ software.html
  2. 2. What is Regression Testing? Alan Richardson www.eviltester.com/agile www.compendiumdev.co.uk @eviltester blog.eviltester.com/2017/10/what‐is‐regression‐testing‐ software.html @EvilTester 2
  3. 3. TLDR; Regression Testing is a Legacy term for testing when a risk of unexpected impact exists after making changes. @EvilTester 3
  4. 4. What is Regression? a former or less developed state. a more primitive state. @EvilTester 4
  5. 5. What is regression testing? A system might regress to a former or less developed state. A more primitive state. Regression Testing is... testing parts of the system that we've already tested when the system changes. @EvilTester 5
  6. 6. Why would we do regression testing? Because the change might have had an unexpected impact on another part of the system. Systems are big. They have interconnected components. We've changed one part it might have impacted the others. So we do Regression Testing. @EvilTester 6
  7. 7. When do we do regression testing? Q: When do we do regression testing? A: Pretty much whenever we make a change. We make a change, if we think there might be change impacted somewhere else we do regression testing. @EvilTester 7
  8. 8. _Just to be clear, "A Change". Any kind of change. Code, infrastructure, environment, libraries, browsers that users use, Java version, OS upgrade, Cache changes, Web Server version. Any change. A change. @EvilTester 8
  9. 9. How do we do regression testing? The legacy view of how we do regression testing is: "Well. We've already tested it. So what we'll do is we'll rerun those tests again." When we have tests in another area we'll rerun those tests. If we've got test cases we'll re‐run those test cases,. If we've written scripts will rerun those scripts. We're doing exploratory testing? We'll do exploratory testing in those areas again. Run our Automated Execution again. @EvilTester 9
  10. 10. Essentially what we're talking about is a subset of testing in an area that is not directly related to the area we've changed. @EvilTester 10
  11. 11. How did this concept arise? Waterfall Too many changes to test in a short period of time Control changes Re‐run rather than re‐analyse @EvilTester 11
  12. 12. The problem with Regression Testing? The system does not actually regress. The system does not move to a former state or a less developed state. The system is advancing to its next state, but there may be unexpected changes. @EvilTester 12
  13. 13. Testing can be viewed as being "all" about risk When we use the term Regression Testing. We're obscuring the risk. We're just saying "well something might have changed therefore we'll run some stuff in some other areas". @EvilTester 13
  14. 14. Redefine Regression Testing in terms of risk "there's a risk that a change has had an unexpected impact on another part of the system" @EvilTester 14
  15. 15. How else could we mitigate the risk of unexpected change? We don't have to use testing as our only mitigation strategy: change development approach re‐architect the system build in small chunks better version control better change tracking Test Driven Development Acceptance Test Driven Development Behaviour Driven Development Automated Execution @EvilTester 15
  16. 16. Any time we're faced with uncertainty. The only thing that really deals with uncertainty, is a new set of analysis. A new set of working out what we have to test, and how we're going to test it. A new set of ideas. @EvilTester 16
  17. 17. Exploratory testing does that by default comes up with new ideas, looks at the risks, looks at the system, figures out how to test it. @EvilTester 17
  18. 18. Redefine your terminology, so that you're not just relying on old legacy notions of "I'll just rerun my stuff again". @EvilTester 18
  19. 19. Look at risk, and adapt your process: your test process, your testing ideas and approach, to the actual needs that are in front of you at this point in time. A constant focus on risk and uncertainty will help you do that. And the notion that "exploration is what leads to new ideas and new coverage" will help. @EvilTester 19
  20. 20. BIO ‐ Alan Richardson Alan Richardson has more than twenty years of professional IT experience, working as a programmer and at every level of the testing hierarchy from tester through head of testing. He has performed keynote speeches and tutorials at conferences worldwide. Author of multiple books on testing and automating. Alan also has created online training courses to help people learn Technical Web Testing and Selenium WebDriver with Java. He works as an independent consultant and coach, helping companies improve their use of automation, agile, and exploratory technical testing. @EvilTester 20
  21. 21. Alan Richardson ﴾www﴿ www.compendiumdev.co.uk www.eviltester.com www.seleniumsimplified.com www.javafortesters.com uk.linkedin.com/in/eviltester testerhq.com ‐ Aggregated Feed @EvilTester 21
  22. 22. Follow Linkedin ‐ uk.linkedin.com/in/eviltester Twitter ‐ twitter.com/eviltester Instagram ‐ instagram.com/eviltester Facebook ‐ facebook.com/eviltester Youtube ‐ youtube.com/user/EviltesterVideos Pinterest ‐ uk.pinterest.com/eviltester Github ‐ github.com/eviltester Slideshare ‐ slideshare.net/eviltester @EvilTester 22

×