SOFTWARE TESTING


What is software testing

Software testing is a method to assess the functionality of the software program. The process checks whether the actual software matches the expected requirements and ensures the software is bug-free. The purpose of software testing is to identify the errors, faults, or missing requirements in contrast to actual requirements. It mainly aims at measuring the specification, functionality, and performance of a software program or application.

Software testing can be divided into two steps

  1. Verification: It refers to the set of tasks that ensure that the software correctly implements a specific function. It means “Are we building the product right?”.
  2. Validation: It refers to a different set of tasks that ensure that the software that has been built is traceable to customer requirements. It means “Are we building the right product?”.

VERFICATION (STATIC TESTING)

This testing is done by checking the document before software is ready,checking the document whether the given requirements is correct or not,it is done before document is ready

REVIEW

whether the document is completed or not if its is completed it is correct or not, this is done by indiviualy in a team

WALK THROUGH

it is a formal review which is done with in a team this is not done indiviualy its done by combining the people,discusing with the team and rasing the issues

INSPECTION

this is very formal review which we have to invite testing, development,management,production

VALIDATION (DYNAMIC TESTING)

Validation is testing the software by giving some inputs used in requirement source

Different Levels of Software Testing

Unit testing :

It a level of the software testing process where individual units/components of a software/system are tested. The purpose is to validate that each unit of the software performs as designed.(which is done by developer)

Integration testing :

It is a level of the software testing process where individual units are combined and tested as a group. The purpose of this level of testing is to expose faults in the interaction between integrated units.( which is done by devloper)

System testing :

It is a level of the software testing process where a complete, integrated system/software is tested. The purpose of this test is to evaluate the system’s compliance with the specified requirements.(which is done by qa team)

UAT(User Acceptance testing ):

It is a level of the software testing process where a system is tested for acceptability. The purpose of this test is to evaluate the system’s compliance with the business requirements and assess whether it is acceptable for delivery.(customer based testing)

Different Types of Software Testing Techniques

Black box Testing :

Testing in which the tester doesn’t have access to the source code of the software and is conducted at the software interface without any concern with the internal logical structure of the software known as black-box testing.

White box Testing :

Testing in which the tester is aware of the internal workings of the product, has access to its source code, and is conducted by making sure that all internal operations are performed according to the specifications is known as white box testing.

Grey Box Testing :

Testing in which the testers should have knowledge of implementation, however, they need not be experts.

S.NO Black Box Testing White Box Testing
1 Internal workings of an application are not required. Knowledge of the internal workings is a must.
2 Also known as closed box/data-driven testing. Also known as clear box/structural testing.
3 End users, testers, and developers. Normally done by testers and developers.
4 This can only be done by a trial and error method. Data domains and internal boundaries can be better tested.

HOME