
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Difference Between Agile Testing and Waterfall Testing
In the computer software testing world, there are two major software testing techniques namely Agile Testing and Waterfall Testing. Agile testing is more flexible and malleable, while waterfall testing is more structured and rigid. There are several other important differences between agile testing and waterfall testing which we will discuss in this article. But before going into the differences, let's start with some basics of agile testing and waterfall testing.
What is Agile Testing?
Agile testing is a software testing mechanism involving all team members where main owners are subject matter experts termed as Product Owners and testers as Quality Assurant. Agile testing is not a separate performed along with development life cycle. Agile testing involves requirements, designing, test strategy development, test cases development and execution.
Agile testing uses an incremental approach and is more flexible. In agile testing, the test plan is reviewed after every point of development. Therefore, agile testing involves testing process performed concurrently with the software development. Agile testing focuses on a product mindset where software product would satisfy the requirements of end customers.
What is Waterfall testing?
Waterfall testing is a phased mannered testing. It is a stepbystep testing and order of steps is fixed. After completion of one phase of testing, the second phase starts. Waterfall testing uses a sequential approach.
Waterfall testing is a structured process and it may be a quite rigid process. In waterfall testing, the test plan is not discussed during the test phase. Here, this testing is performed after the complete development of the product.
Difference between Agile Testing and Waterfall Testing
The following table highlights the important differences between Agile testing and Waterfall testing ?
Key | Agile Testing | Waterfall Testing |
---|---|---|
Phase | There is no concept of phase in Agile Testing. | Testing is a separate phase in Waterfall testing. |
Development | Testing is performed during development in Agile testing. | Testing starts after development is complete in Waterfall testing. |
Requirement Gathering | In Agile testing, QAs are part of requirement gatherings. | In Waterfall testing, QAs are normally not involved in requirement gathering phase. |
Acceptance Testing | Acceptance test cases are executed after completion of each iteration. | Acceptance test cases are executed once software is developed. |
Delay | In Agile Testing, no time delay between development and testing. | In Waterfall Testing, some delay often occurs between development and testing. |
Overlap | Testing levels can overlap in Agile testing. | Testing levels cannot overlap in Waterfall testing. |
Approach | Agile testing is an incremental approach. | Waterfall testing is a sequential approach. |
Test plan | In agile testing, the test plan is reviewed after every sprint. | In waterfall testing, the test plant is not reviewed during development phase. |
Testing | Agile testing is performed concurrently with software development. | Waterfall testing is performed after the build phase. |
Flexibility | Agile testing is flexible. | Waterfall testing is less flexible. |
Conclusion
To conclude, waterfall testing is a sequential approach in which the testing phase comes after the build phase, while agile testing is an incremental approach which involves concurrent testing with software development.