DEV Community

Madhesh
Madhesh

Posted on

Manual testing and its Techniques

Introduction for manual testing:

Manual testing is the phase which comes under software development which ensures the delivery of the developed software product is reliable and functional with high quality without any compromise .The manual testing consists of several phases in which each part of the product will tested whether it is working fine as expected this contains testing both positive and negative scenarios where we can identify what is working and what is not working also we can make sure about the design flaws and logical inconsistencies without testing a product cannot be launched or used by the end user thus manual testing is must in the software development life cycle. This can be done by identifying the possible test scenarios based on positive and negative flows and drafting the testcases and executing them with the help of test data usually happens in testing environment.

1.Common Manual testing techniques:

The manual testing techniques contains different types the below are the techniques which are widely used among the industries by current software development companies

• White box testing: This testing methodology consists of process which test the developed code in a deep level internally such as structure, mappings, designs, connections etc..

• Black box testing: This testing methodology consists of process which test the functionality from the end user perspective Ex: making sure whether the login functionality is working fine in the portal

• Grey box testing: The process of testing a software product by combining both understanding the internal logics and functionality with an overall understanding mostly this will be done by subject matter expert in QA testing.

• Smoke testing: This testing will be performed when a new build is deployed in a existing product to make sure no exiting code is broken.

• Integration testing: This process consists of testing the connections between systems like API and databases once connected to make sure the data flow.

• Regression testing: This testing is like just doing a high-level testing for all the components if any fix or code changed has been made mostly regression suit will be prepared and tested.

• Acceptance testing: It ensures whether the software met its requirements and rules as per the user expectations testers will draft scenarios based on this

2.Boundary Value analysis (BVA):

The boundary value analysis is the testing methodology which comes under black box testing the tester will test first understand the input parameters and ranges of the functionality for example if there is registration page it will contain two columns username and password there must be some range conditions in which username must be within 4-15 so the tester will test the boundary values the possible test cases will be like test by entering 4 letter and 15 letters and less than 4 and more than 15 this method of testing the boundaries of the parameter with respect to the business logic already implemented is called as boundary value analysis.

Advantage:

• The tester only needs to test specific scenarios as per business logic don’t need to test all the positive scenarios to ensure the functionality

• This will make sure whether the entering the input parameters doesn’t breaching the business logic example: if the password creation contains some format and limit by BVA we can ensure it accomplish the business logic which was implemented in back end code.

3. Decision table testing:

This methodology is also a black box testing methodology where it is used to test the complex business rules and logics in this process the tester will test the all the possibilities as per the business logic which needs to ensured and implemented in the code wise. This can be implemented by understanding the actions and business rules and creating a table which contains of different possible possibilities such as positive and negative scenarios in order to accomplish all the possible decision which the system will react with respect to the functionality.
Example: For a banking application where:
Condition 1: If Account balance > ₹10,000
Condition 2: If Customer has no loan dues

Rule Condition-1 Condition-2 Action
1 True True Approve Loan
2 True False Reject Loan
3 False True Reject Loan
4 False False Reject Loan

Like the above table the tester will setup the test data and test the possible scenarios with respect to the decision table.

This table ensures all possible input combinations are tested, preventing logical errors in decision – making.

4. The future of Manual testing in the Age of AI:
We know that AI is emerging in all the fields right now as per the world order thus the software development also have a major part in AI revolution in which it consists of software testing life cycle also int it. The AI and automation reshape the manual testing by the help of AI powered tools with respect to automation flow where human testers focus on the cognitive and exploratory testing most of the AI tools which used in the software testing are designed to automate the testing process which can ensure the quality at the same time with less effort and time thus nowadays AI tools plays a major role in software testing.

Critical factors:

• However, AI tools will reduce time and effort but it cannot provide 100 % quality since Human sense of testing a products usability with respect to the end user cannot be accomplished completely by any AI tools the tester can provide possible static and dynamic scenarios to AI tools but a product which will have human as END user cannot be completely testable with AI or Automation.

• AI can assist tester more possible positive and negative scenarios and suggest more test cases which will be helpful to ensure the quality but not upto the mark.

• In order to adopt the AI tools and automation the tester must also be up to date and upskilling is the essential part for manual testers to stay relevant in the software testing market across the globe.

Conclusion:

Therefore, manual testing remains an irreplaceable component of software quality assurance despite the automation testing or AI advancements. Techniques like Boundary value analysis, and decision table testing, grey box testing helps to ensure the software product by 99.99 % percentage the rest 0.01 % will also be covered by executing the performance and load testing which will be determined by the third-party services such as internet, servers and other factors.

Done by: Madheshwaran V

Top comments (0)