COMMON MANUAL TESTING TECHNIQUES
According to the client requirement test any software/application without using any automation tool is known as manual testing.In other words, we can say that it is a procedure of verification and validation.
Manual Testing Types
White Box - The developer will inspect every line of code before handing it over to the testing team or the concerned test engineers.
Black Box - In black box testing, the test engineer will analyze the software against requirements, identify the defects or bug, and sends it back to the development team.
Grey Box - The combination of White box and Black box testing is called Grey Box testing
Black box consists of 2 types
Functional Testing - We will check all the components systematically against requirement specifications is known as functional testing.
Non Functional Testing - The next part of black-box testing is non-functional testing. It provides detailed information on software product performance and used technologies.It will help us minimize the risk of production and related costs of the software.
In Functional there are 3 types
Unit Testing - Unit testing is the first level of functional testing in order to test any software. We will will test the module of an application independently or test all the module functionality is called unit testing
Integration Testing - Once we are successfully implementing the unit testing, we will go integration testing. It is the second level of functional testing, where we test the data flow between dependent modules or interface between two features is called integration testing. It is used to test the statement's accuracy between each module.
System Testing - once we are done with the unit and integration testing, we can proceed with the system testing.The test environment is parallel to the production environment.
Integration Consists of 2 types
Incremental Testing - Whenever there is a clear relationship between modules, we go for incremental integration testing. Suppose, we take two modules and analysis the data flow between them if they are working fine or not.If these modules are working fine, then we can add one more module and test again. And we can continue with the same process to get better results.
Non Incremental Testing - Whenever the data flow is complex and very difficult to classify a parent and a child, we will go for the non-incremental testing
Incremental Testing Consists of 2 types
Top Down - In this we can add the modules step by step or incrementally and test the data flow between them. We have to ensure that the modules we are adding are the child of the earlier ones.
Bottom Up - In this we can add the modules incrementally and check the data flow between modules.IT is the parent of the earlier ones.
Non Functional Testing consists of 3 types
Performance Testing - In performance testing, the test engineer will test the working of an application by applying some load.The test engineer will only focus on several aspects, such as Response time, Load, scalability, and Stability of the software or an application.
Usability Testing - Another type of non-functional testing is usability testing. In usability testing, we will analyze the user-friendliness of an application and detect the bugs in the software's end-user interface.
Compatibility testing -We can check the functionality of an application in specific hardware and software environments. Once the application is functionally stable then only, we go for compatibility testing.
Performance Testing Consists of 4 types
Load Testing - We will apply some load on the particular application to check the application's performance is known as load testing. The load could be less than or equal to the desired load.
Stress Testing - stress testing is used for critical software, but it can also be used for all types of software applications.
Scalability Testing - To analysis, the application's performance by enhancing or reducing the load in particular balances is known as scalability testing.we can also check the system, processes, or database's ability to meet an needed requirement. And in this, the Test Cases are designed and implemented efficiently.
Stability Testing - Stability testing is a procedure where we evaluate the application's performance by applying the load for a precise time.It mainly checks the constancy problems of the application and the efficiency of a developed product. In this type of testing, we can rapidly find the system's defect even in a stressful situation.
BOUNDRY VALUE ANALYSIS
Boundary Value Analysis is a powerful software testing technique that focuses on testing the edge values of input ranges. It targets the extremes, where systems are most likely to encounter errors, rather than checking every possible input.
Boundary Value Analysis is a black-box testing technique that targets the input range edges where defects are most likely. It tests both valid and invalid boundary values to ensure the system works as expected under extreme conditions, improving reliability and performance.
Testers check the following for each variable:
Nominal value
Minimum value
Above/below minimum value
Maximum value
Invalid boundary value (for invalid partitions)
Valid boundary value (for valid partitions)
Step by step process for implementing Boundry Value Analysis :
- Identify input variables
- Define input variables
Design test cases
(i) Create Test cases with below boundries
(ii) Valid boundaries (minimum, maximum)
(iii)Values just inside the valid boundaries
(iv)Values just outside the valid boundaries (minimum -1 and maximum + 1)
(v)Invalid values (e.g., negative numbers where only positives are allowed)Execute test cases
## Decision Table Testing ##
A Decision Table is a useful tool for organizing and managing these different combinations. It helps testers figure out how different conditions and actions should work together, making sure all possible scenarios are tested.
Key Components of a Decision Table:
Conditions: Inputs influencing decisions.
Actions: Expected outcomes based on conditions.
Condition Alternatives: Possible states of each condition.
Decision Rules: Logical combinations of conditions determining actions.
Action Entries: Specific actions for each condition combination.
Types of Decision Tables:
Limited Decision Table
Extended Decision Table
Condition-Action Table
Switch Table
Rule-Based Decision Table
The Future of Manual Testing in the Age of AI
Automation is powerful, but it has limits, and those limits define where human intelligence shines.
AI can validate that a button works. But it can’t sense that the button feels wrong in the user flow.
AI can check functional correctness. But it can’t notice that the color contrast fails accessibility.
Here’s how the role of manual testers is changing:
From repetitive execution to strategic validation
From writing individual test cases to designing full testing frameworks
From reporting bugs after they appear to preventing defects before they happen
From simply following automation to guiding and improving it
1.Test Case Preparation
AI can analyze user behavior, application descriptions, historical data to automatically generate test cases, focusing on critical areas and prioritizing high risk scenarios. AI can interpret natural language descriptions using NLP (Natural Language Processing) of testcases and it can automatically translate them into executable test scripts.
2.Test Data generation
AI can create test data that closely resembles real user inputs enhancing the quality of testing
3.Test Execution
AI can prioritize critical test cases, saving time and resources by executing only essential test cases. It can facilitate parallel execution across multiple environments, reducing execution time. It eliminates repetitive tests.
4.Debugging
AI can easily identify unusual patterns in application behavior, helping human tester to find potential issues and bugs. AI can also help identify areas where defects are more likely to occur so that testers focus their efforts on the most vulnerable part of application. AI can also analyze system logs and other data to help identify the root cause of the defects.
5.Conclusion
AI can automate repetitive tasks, improve testing efficiency and providing intelligent insights. It cannot replace human testers out of box thinking abilities, knowledge and creative thinking. By combining AI tools with Manual testing, we can create testing process faster, more reliable and delivers high quality software.
Top comments (0)