What is the difference between regression test and end-to-end test

2

I'd like to know the difference between these two tests, regression testing and end-to-end testing. I searched in some places but found material more TDD-related, and both look a bit like this.

When using regression testing or end-to-end testing while testing software?

    
asked by anonymous 29.04.2018 / 22:52

1 answer

1

Regression tests: All tests that will be re-run to ensure that the software works (from existing features and covered by tests). If some functionality has the behavior changed unwanted, these tests will fail and evidence which part of the system has been impacted by the new code. It can be manual, automated, unitary etc.

End-to-end testing: Tests performed on the integrated system. With identical environment (or as close as possible) to the end user, exercising the full system or feature flows (not just a small part). Ex: In a web application development process, we could have several levels of testing: unit testing, integration testing, frontend testing with mocks, api (or backend) testing, etc. The end-to-end test will be done when all dependencies are available, ie in an environment with the frontend, apis, database connected, using the same environment that the end user will use.

I recommend that you do end-to-end testing whenever there is the smallest possible deliverable portion available. I also recommend that you automate them (increasing coverage of your regression tests)

    
02.05.2018 / 21:13