What is Software Testing?
Software testing is the process of checking or testing all defects and it ensures software fulfilled all requirements and business statics.
Software testing process is used to determine the software is developed as per client expectation or business perspective.
“Every software is developed to support the business and Software testing is performed for business support and improvement in the quality of software”.
Software testing has three main purposes: – Verification, Validation, and Defect Finding.
Verification process: – The verification process confirms that the software meets its technical specifications. It ensures that “Are we building the thing right”, and it ensures that the software has high quality.
Validation Process: – The validation process confirms that the software meets the business requirements. It ensures that “Are we building the right product or not”, and it ensures that the software is usable or useful.
Defect Finding: – A defect is a difference between the expected and actual result. The defect ensures the fault make in the specification, design or development. Defect find by the tester.
There are two ways to perform testing.
- Manual Testing
- Automation Testing
Manual Testing: – Checking or testing the application manually without using any automated tool or script is known as manual testing. Manual testing also includes exploratory testing in which testers explore the software by self-knowledge to identify errors in software.
Automation Testing: – Checking or testing the application with the help of an automation tool or script is known as automation testing. In automation testing process, the manual testing process does involve. Automation testing is performed to re-run and repeatedly the test scenarios that were performed manually.
Tolls that are used for automation testing:- QTP(Quick test prof), Selenium, APM (used for mobile application test).
Types of Testing:-
- White box testing
- Gray box testing
- Black box testing
White-box testing: – White-box testing is a process of testing the internal logic and structure of the code. White-box testing is also known as glass testing or open-box or transparent testing. If white-box testing is performed by a tester, then tester should have known about the internal workings of the code.
Testing performed on the source code by the developers to check does the source code is working as expected or not is called white box testing. Checking each and every line of code is called white box testing.
Gray-box testing: – Grey-box testing is a technique to test the application with having a limited knowledge of the internal workings of an application. In grey-box testing, the tester has access to design documents and the database.
Block-box testing: – The technique of testing without having any knowledge of the internal workings of the application is called black-box testing. When a tester performing a black-box test, a tester will interact with the system’s user interface by providing inputs and examining outputs and verifying the functionality against the requirement specification.
Verifying the functionality against the requirement specification is called black-box testing.