Today we'll learn what are the main levels of testing.Actually there are different levels during the process of testing. In this post, a brief description is provided about these levels.
Levels of testing include different methodologies that can be used
while conducting software testing. The main levels of software testing
are,
- Functional Testing
- Non-functional Testing
Functional Testing
This is a type of black-box testing that is based on the
specifications of the software that is to be tested. The application is
tested by providing input and then the results are examined that need to
conform to the functionality it was intended for. Functional testing of
a software is conducted on a complete, integrated system to evaluate
the system's compliance with its specified requirements.
- Unit Testing
- Integration Testing
- System Testing
- Acceptance Testing
- Regression Testing
- Alpha Testing
- Beta Testing
Non-Functional Testing
Non-functional testing involves testing a software from the requirements
which are nonfunctional in nature but important such as performance,
security, user interface, etc.
- Performance Testing
- Usability Testing
- Security Testing
- Portability Testing
Software Testing Life Cycle (STLC) defines the steps/ stages/ phases in testing of software.
Like SDLC, STLC has fixed phases.
- TEST PLANNING – Preparing the test strategy & planning
- TEST DEVELOPMENT – Creating the testing environment
- TEST EXECUTION – Writing the test cases/Creating & Executing the Test Script
- RESULT ANALYSIS – Analysis result and Bug report
- BUG TRACKING – Analyze Bugs and application errors
- REPORTING – This is a post conditional process which involves collecting data from end users
With respect to the software, there are three classifications of software defects or bugs as they are more commonly referred as,
Software Error
Software errors are sections of the code that are partially or totally incorrect as a result of a grammatical, logical or other mistake made by a systems analyst, a programmer, or another member of the software development team.An error can be a grammatical error in one or more of the code lines,or a logical error in carrying out one or more of the client’s
requirements.An error may or may not be detected during the coding or
testing of the program before it is released to a customer.
Software Fault
Software faults are software errors that cause the incorrect
functioning of the software during a specific application A software fault occurs as a result of an error that remains in the executing program However, not all software errors become software faults.Not all faults however are detected and the software may continue executing without any obvious problems.There are cases where software faults go undetected for many years of a programs existence
Software Failure
Software faults become software failures only when they are “activated”, that is, when a user tries to apply the specific software section that is faulty. Thus, the root of any software failure is a software error.