* White box * Black box * Functional Testing * Unit testing * Integrating testing * Incremental testing * Top-down * Bottom-up * Non-Incremental testing * System testing * Non-Functional testing * Performance testing * Load testing * Stress testing * Scalability testing * Stability testing * Usability testing * Compatibility testing * Grey box
MANUAL TESTING :
Manual testing is software testing technique where execute test cases and verify the application's functionality without the use of automated testing tools or scripts. Here are some key benefits and drawbacks of manual testing:
Benefits of manual testing:
** 1.Human Insight:** Testers can apply their domain knowledge and intuition to identify potential issues that automated tests might miss. ** 2.Exploratory Testing:** Manual testing allows for exploratory testing, where testers actively explore the application to find unexpected defected. ** 3.Cost-Effective For Small Projects:** For small-scale projects or those with frequently changing requirements, setting up automated tests may be more time-consuming and costly than manual testing. ** 4.Early Testing:** Manual testing can begin even before the software is fully development cycle, helping to uncover defers early in the development cycle.
** Drawbacks of manual testing:**
Manual testing can be time-consuming and
labor-intensive, especially for repetitive tasks.
** 2.Subjectivity:** Test results can be influenced by the tester's subjectivity, lending to inconsistent results. **3.Not Suitable For Repetitive Testing:** For regression testing or scenarios requiring the same tests to be run frequently, manual testing can be inefficient. ** 4.Limited Scalability:** It's challenging to scale manual testing for large and complex application or when frequent testing is needed. ** 5.Lack Of Test Coverage: ** Manual testing might not cover all possible test cases due to human limitations.
User interface Testing:
Manual testers assess the user interface for usability, visual consistency, and user experience, ensuring it meets design requirements.
Usability Testing :
Testing interact with the software as end -user to evaluate its user-friendliness and identify areas for improvement.
Testers explore the application without predefined test cases, aiming to discover defects that automated tests might overlook.
AD HOC Testing :
testers perform unplanned testing to catch issues in real - world scenarios.
Compatibility Testing :
Checking the Software's compatibility with various browsers, devices, or operating system manually to ensure a consistent user experience.
Test Case Design:
Manual testing involves the creation of detailed test cases, which outline the steps to be taken and the expected results. testers meticulously design these test cases to ensure comprehensive coverage.
Exploratory Testing :
This approach involves testers using their creativity and domain knowledge to discover defects that may not be covered by scripted testers cases. it's particularly valuable for finding unexpected issues.
User Acceptance Testing(UAT):
UAT is often performed manually by end-users or business stakeholders to ensure the software meets their requirements and expectations before deployment.
Edge case Testing :
Testers can focus on testing edge cases, such as extreme input or unusual scenarios, to uncover vulnerabilities that automated tests might not consider,
Beyond functional testing, manual testing assesses the software's overall usability, including factor like intuitiveness, accessibility, user satisfaction.
Manual testers can provide immediate feedback to developers about defects, allowing for quicker fixer and improvements.
Manual testers can adapt quickly to changing requirements or evolving project conditions, making them valuable in agile development environments.
Two testers can collaborate in pair testing, where one person executes the tests while the other observes, leading to more thorough testing.
Test Data Setup :
Testers often manually prepare test data and ensure the test environment is configured correctly.
Localization Testing :
Manual testing essential for verifying that software is culturally and linguistically appropriate for specific regions or languages.
Manual testers can evaluate the software's accessibility by checking if it meets accessibility standards and is usable by individuals with disabilities.
While automated tools are useful for certain security tests, manual testers can perform in depth security assessments, such as penetration testing and code review.
User Story Validation:
Manual testers can validates that user stories or requirements are correctly implemented, aligning the software with the intended functionality.
While Automation is often preferred for regression testing, manual regression testing can be used when automation is not feasible or when quick checks are needed.
User Feedback Incorporation :
Testers can incorporate user feedback into their testing process, helping to prioritize and address issues that matter most to users.
manual testing provides human insights, is cost -effective for certain scenarios, and is suitable for early testing, However, it is labor-intensive, subjective, and less efficient for repetitive tasks compared to automates testing. it's essential to strike a balance b/w manual and automated.