Home » Software Engineering

Levels of Testing in Software Engineering

In this article, we are going to discuss the different levels in which the testing is performed. We will first all these levels and then will elaborate on each of them separately.
Submitted by Monika Sharma, on November 11, 2019

Software testing is a procedure to check the software code for correctness, i.e. to check whether the results produced by the software are the same as the expected results that the software must produce.

Testing is a process that is performed with every phase of the software development from the very initial stage itself. It is a myth that software testing takes place only after the whole software is completed. If this is still the case anywhere, then this practice must be strictly avoided to make the software efficient both in terms of quality and cost because as soon as the error in the software gets detected, the easier it is to correct and resolve it.

As the testing of the code takes place from the ideation phase itself, there are different levels defined for it. These levels are as follows,

  1. Unit testing
  2. Integration testing
  3. System testing
  4. Acceptance testing

1) Unit testing

A unit of software is its modules. Therefore, unit testing is performed while building the modules of the software. This is done by the developer itself or sometimes by a group of developers. As the module is much small and precise for its functionalities, it is much easier to observe it for the performance and error are also easy to detect and recover in this phase. This turns to be a very crucial step while developing a cost-effective good quality software because the more optimized the modules will be after this level, the fewer problems would occur in the later testing levels.

2) Integration testing

It is the second level of testing that is performed while integrating different modules. A group of modules, also called subprograms are integrated and their behavior is checked whether they are performing the same as expected after integration also. Here, it is not mandatory to integrate all the modules of the entire software and then do the testing, but some modules can also be checked and this process can incrementally take place until the whole software is built and integrated.

3) System testing

This level of testing is performed after the whole software is completed and all its module is integrated. The software is then compiled and run on the machine and the testing to check the following is performed on it,

  1. Functionalities that the software must offer
  2. Performance in different cases
  3. Security
  4. Portability

4) Acceptance testing

This is the final level of testing which is performed just before the software is ready to hand over to the customer. In this testing level, the software is tested for all the user interactions with the software and the responses produced by the software.

The acceptance testing further involves three levels,

  1. Alpha testing
  2. Beta testing
  3. Gamma testing





Comments and Discussions

Ad: Are you a blogger? Join our Blogging forum.





Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates


© https://www.includehelp.com some rights reserved.