Software Testing Terms Every Software Developer Should Know.
(In Layman Language)
A Thread (Part 2)
(In Layman Language)
A Thread (Part 2)



- Unit Testing
- Integration Testing
- System Testing
- Regression Testing
- Acceptance Testing
- Alpha and Beta Testing

- Performance Testing : Load and Stress Testing
- Usability Testing
- Security Testing
- Portability Testing

- Type of software testing where individual units or components of a software are tested.
- Performed by developer
- Goal : To isolate each part of the program and show that individual parts are correct in terms of requirements and functionality.

- Integrating parts of program to test them together.
- Testing of combined parts of an application to determine if they function correctly.

- All components are integrated and tested as a whole system
- Done by a Tester

- It is done to check that a fixed bug hasn't screwed any other part of the program or resulted in business rule violation

- Done by Quality Assurance Team
- It is done to check if the application meets the intended specifications and satisfies the client’s requirement.
- I would say it is the most important type of testing.

= Unit + Integration + System Testing
- Performed by: Teams (developer and QA teams)

- Also called pre-release testing.
- The finished product is sent to a sample of the intended audience to test the application.

- Done to check the performance ( Speed, Capacity, Stability, Scalability) of the software duh..
- Types:
> Load Testing
> Stress Testing
>
Load Testing
- Testing the behavior of a software by applying maximum load in terms of software accessing and manipulating large input data
>
Stress Testing
- Testing the behavior of a software under abnormal conditions.

- Testing the behavior of a software by applying maximum load in terms of software accessing and manipulating large input data
>

- Testing the behavior of a software under abnormal conditions.

- Basically testing if the software is usable or not

- Do I really need to explain this