ManualTesting is a software testing process in which all the test cases are executed manually according to the end user's perspective
Test cases are planned and implemented to complete almost 100 percent of the software application
The difference between expected output and output given by the software, is defined as a defect
Manual Testing is essential because one of the software testing fundamental is "100% automation is not possible".
Types of Manual Testing
White Box Testing
Black Box Testing
Gray Box Testing
White box testing is also known as glass box testing, structural testing, clear box testing, open box testing, and transparent box testing.
White Box Testing
It tests internal coding and infrastructure of a software focus on checking of predefined inputs against expected and desired outputs. It is based on inner workings of an application and revolves around internal structure testing.
In this type of testing, programming skills are required to design test cases.
Various tests in White Box Testing
Path Testing
Loop Testing
Condition testing
Testing is based on the memory perspective
Test Performance of the program
In the pathtesting, we will write the flow graphs and test all independent paths.
in the loop testing, we will test the loops such as while, for, and do-while, etc., and check for ending conditions to see if they are working correctly and if the size of the conditions is enough.
This is called a unit test and is done by the developers themselves.
Condition Testing
in this test, we will test all logical conditionals for both true and false values; that is, we will verify for both if and else condition.
Testing based on the memory perspective
Memory perspective talks about the size of the program or number of lines of code.
Rogue functions and variables are mistakes that we cannot remember by verifying the code, especially if the project is large.
Tools like IBM Rational PurifyPlus help by observing the code and highlighting unnecessary functions and variables
only available for programs made using Java, C/C++/C#, VB, and all VS.NET
Testing the performance of the program
During white box testing, the developers must understand that the code is running slow, or the performance of the program is getting deliberate.
PurifyPlus includes a tool called Rational Quantify which resolves these issues automatically.
Black box testing is a technique of software testing which examines the functionality of software without peering into its internal structure or coding.
The test procedure of black box testing is a kind of process in which the tester has specific knowledge about the software's work, and it develops test cases to check the accuracy of the software's functionality.
BLACK BOX TESTING TECHNIQUES
There are various techniques used in black box testing for testing, such as:
Decision Table Technique
Boundary Value Analysis Technique
State Transition
All-Pair Testing
Cause-effect Graph Technique
Equivalence Partitioning Technique
Error Guessing Technique
Use Case Technique
User Story Technique
Decision Table Technique is a systematic approach where various input combinations and their respective system behavior are captured in a tabular form.
Boundary Value Technique is used to test boundary values, boundary values are those that contain the upper and lower limit of a variable.
State Transition Technique is used to capture the behavior of the software application when different input values are given to the same function.
All-pair testing Technique is used to test all the possible discrete combinations of values.
Cause-Effect Technique underlines the relationship between a given result and all the factors affecting the result.
Equivalence partitioning is a technique of software testing in which input data divided into partitions of valid and invalid values, and it is mandatory that all partitions must exhibit the same behavior.
Error guessing is a technique in which there is no specific method for identifying the error.
Use case Technique used to identify the test cases from the beginning to the end of the system as per the usage of the system.
Grey Box Testing
is a software testing method to test the software application with partial knowledge of the internal working structure.
It is a combination of black box and white box testing because it involves access to internal coding to design test cases as white box testing and testing practices are done at functionality level as black box testing.
Grey Box Testing is primarily used in integration testing and penetration testing.
GREY BOX TESTING TECHNIQUES
There are various techniques used in grey box testing for testing, such as:
Matrix Testing
Regression Testing
Orthogonal Array testing (OAT)
Pattern Testing
MATRIX TESTING TECHNIQUE
It defines all the used variables of a particular program. In any program, variable are the elements through which values can travel inside the program.
REGRESSION TESTING TECHNIQUE
is used to verify that modification in any part of software has not caused any adverse or unintended side effect in any other part of the software.
ORTHOGONALARRAY TESTING (OAT) TECHNIQUE
The purpose of this testing is to cover maximum code with minimum test cases.
PATTERN TESTING TECHNIQUE
is applicable to such type of software that is developed by following the same pattern of previous software.