Webinar: 2x Your Test Creation Velocity with testRigor and TestRail. Register Now.
A Real-World Story from BrightInsight
Turn your manual testers into automation experts! Request a Demo

Manual Testing Cheat Sheet

Software testing is a non-negotiable part of the software development lifecycle (SDLC). Though automation testing is beneficial and the primary focus of technological advancements, one can just not dismiss the importance and effectiveness of manual testing. For example, in situations where the product is in nascent stages, manual testing is a better choice. Only after the product stabilizes and matures does it make sense to invest time and effort into setting up automation testing.

With manual testing still being an integral part of software testing, it makes sense to familiarize oneself with the commonly used terms and procedures. Read on below to see a comprehensive compilation of the key concepts required for anyone intending to manually test a product.

Key Takeaways:
  • Manual testing remains essential in early-stage products and for exploratory, usability, and ad-hoc validation.
  • Understanding SDLC models helps testers align their strategy with project needs and constraints.
  • Different testing levels and types serve unique purposes, from unit validation to end-to-end user experience.
  • Metrics like defect density and DRE provide measurable insights into product quality and testing effectiveness.
  • A balanced approach combining manual testing expertise with automation delivers optimal quality and efficiency.

SDLC

Stages of the software development life cycle (SDLC)

Types of SDLC models

Model Pros Cons
Waterfall Model
  • Suitable for stable projects with clear requirements
  • Sequential approach
  • Documentation at every stage, hence easy tracking
  • No flexibility for accommodating changing requirements or feedback
  • The customer needs to wait till the final stage to review the product
Spiral Model
  • Suitable for clear and complete requirements, but with room for future enhancements
  • The iterative nature allows for continuous improvement based on feedback
  • Focus on risk assessment and mitigation
  • Effective risk assessment and management are required for project success
  • Can be costly and resource-intensive
  • Difficulty maintaining and tracking the stages of this model
RAD Model
  • Suitable for projects with clear but presently incomplete requirements
  • Components developed can be reused easily
  • Small cycles may not give substantial functionalities to the product, leading to significant delays in timelines
  • Experts are needed to build products in this model
Prototype Model
  • Prototypes help in identifying missing features or functionalities in the product in advance
  • Since the customer is involved from the initial stages, there is no ambiguity
  • Involvement of the customer early on means that if the prototype is not satisfactory, the process goes on in a loop till success. This can prove to be time-consuming, effort-intensive, and costly
Agile Model
  • The product is broken down into smaller cycles, leading to the development of a working product quickly
  • Easy to add new features
  • Customer feedback is utilized at every stage
  • Requires skilled resources to work in such an environment
  • If the customer is unsure of the requirements, then the project will be impacted
Read:

Testing methods

Method Details
Black box testing
  • No knowledge of the internal structure or code
  • The focus remains on input and output
  • Examples include higher levels of testing like system or acceptance testing
White box testing
  • Testing based on the internal logic, structure, and code of the software
  • Examples include lower levels of testing, like unit testing
Grey box testing
  • A combination of black box and white box testing
  • Partial knowledge of the product’s internal structure is available
  • Examples include integration testing

Read: Black-Box and White-Box Testing: Key Differences

Testing methods for integration testing

Approach Details
Top-down approach
  • Starts with testing the higher-level modules or components first and gradually integrates lower-level modules.
  • Stubs (simplified implementations of lower-level components) may be used for simulating the behavior of lower-level modules.
Bottom-up approach
  • Begins with testing the lower-level modules or components first and gradually integrates higher-level modules.
  • Drivers (programs that simulate higher-level components) may be used to provide inputs and test the behavior of higher-level modules.
Sandwich approach
  • Also known as mixed integration testing, this approach combines elements of both top-down and bottom-up approaches.
  • Allows for faster testing of critical modules by integrating lower-level modules and higher-level modules simultaneously.

Levels of testing

Level Details
Unit tests
  • Focus on individual units of code, like functions and classes
  • Major chunk of test cases
  • Requires programming knowledge
  • Lightweight tests that can run independently
Integration tests
  • Focus on integrations between different systems
  • These tests may have some dependencies on other modules and systems, and hence are not as lightweight as unit tests
End-to-end tests
  • Testing is done from the customer’s perspective rather than a developer’s
  • UI-based testing, hence, takes longer to run
  • Fewer in number compared to unit and integration tests
Read:

Types of testing

Type Details
Functional testing
  • Testing functionalities for proper behavior
Usability testing
  • Evaluating a product’s ease of use and intuitiveness
Security testing
  • Checking the security of the application through the network, data, APIs, and other components
  • Includes testing for issues like unauthorized access, data breaches, and injection attacks
Exploratory testing
  • This form of testing is unscripted and focuses on finding issues in the system
  • Relies heavily on the tester’s understanding of the product
Smoke testing
  • A preliminary round of testing to quickly assess if the software is stable enough for further testing
Regression testing
  • Form of testing done to ensure that existing functionalities do not get impacted after the introduction of new features or fixes
Alpha testing
  • This kind of acceptance testing is conducted by the internal QA team to identify defects before release
Beta testing
  • Beta testing involves real users testing the software in a controlled environment before it’s widely released
Sanity testing
  • Validates at a high level if the functionalities are working as expected
  • Further testing is done based on these results
Performance testing
  • Checks the performance of the application under different conditions, like the product’s responsiveness, scalability, and stability under varying load conditions
  • Includes targeted testing types like load testing and stress testing
Load testing
  • Evaluates the product under peak load to identify bottlenecks and scalability issues
Stress testing
  • Tests the product’s stability and performance under extreme conditions
Read:

Phases of the software testing lifecycle

Bug life cycle

Read: Defect Lifecycle

Term Meaning
Defect When the product is not working as per requirement
Bug When the results are not as expected
Error Problems in the code give errors
Failure Can occur due to any of the above

Testing metrics and artifacts

Metric / Artifact Details
Defect Density
  • The number of defects found in a specific component or area of the software, normalized by the size of that component
  • Defect Density = Number of Defects / Size of Component (e.g., lines of code, function points)
Defect Removal Efficiency (DRE)
  • Meant to measure the number of defects found internally
  • DRE = (Total Defects Found – Total Defects Found in Production) / Total Defects Found
Test Coverage
  • Measures the extent to which the code or requirements are exercised by test cases
Defect Age
  • Measures how long a defect remains unresolved
QA
  • Refers to the process of assuring quality throughout SDLC
  • Helps in creating preventive measures against issues
QC
  • Refers to verifying that the product meets expected standards
  • Helps in detecting issues in the product
Priority
  • The importance of the issue to be resolved with respect to the customer
Severity
  • The seriousness of the issue in terms of the functionality of the product
Test Plan
  • Outlines the overall strategy, scope, objectives, and resources for testing
  • It also mentions testing approaches, deliverables, methodologies, schedule, roles, and responsibilities of team members
Test Strategy
  • Defines the high-level approach and guidelines for testing activities
  • Covers aspects such as test levels, test techniques, environments, and entry/exit criteria
Requirement Traceability Matrix (RTM)
  • Links requirements to corresponding test cases, ensuring comprehensive coverage
  • Helps track the progress of testing against specified requirements
Read:

Responsibilities of a tester

Leveraging manual testing expertise through automation

The myth that a manual tester cannot automate test cases as well as automation engineers is proven wrong with automation tools like testRigor. It is a powerful test automation tool that lets you write scripts as easily as writing test cases in plain English language, sans the need to code those statements in a programming language. Its advanced AI engine not only lets you write test scripts easily but also provisions for negligible test maintenance overhead and speedy and accurate test execution. With a rich set of commands, you can automate across platforms like the web and mobile devices while also ensuring that maximum test coverage is achieved.

A test case in testRigor would look like this:
login
click on "Admin"
add a new contact
logout

Organizations using testRigor report a significant improvement in their quality control endeavors due to increased test coverage, fewer issues released to production, and quicker release cycles. All this while empowering in-house resources like manual testers to leverage their testing experience without getting sidelined by the technicalities of automation testing. This, in turn, benefits the company in terms of overall costs and better collaboration between teams.

Transition from manual testing to automation

Manual testing evolves into automation by focusing on scalability and efficiency. Instead of executing tests manually, testers begin designing automated workflows. This shift helps improve speed, consistency, and repeatability in testing.

Automation is best suited for repetitive and regression testing scenarios. Manual testing still plays a key role in exploratory and usability validation. A balanced approach between both ensures better overall product quality.

Read:

Exploratory testing mindset

Exploratory testing is an unscripted approach where testers actively explore the application. It relies on creativity, intuition, and domain knowledge. Testers simultaneously learn and validate the system.

This method is effective for uncovering hidden defects and edge cases. It complements structured testing by covering gaps in predefined scenarios. Skilled testers can identify critical issues quickly using this approach.

Read: Exploratory Testing: How Do You Approach It as a QA Engineer?

Test data strategy

Test data is essential for validating application behavior accurately. Using diverse and realistic data helps uncover issues effectively. Poor test data can lead to misleading results.

A good strategy includes creating, managing, and maintaining test data properly. It should also ensure compliance with data privacy regulations. Proper data management improves test reliability and coverage.

Defect triage process

Defect triage is the process of reviewing and prioritizing reported defects. Teams decide which issues need immediate attention and which can be deferred. This helps in managing defects efficiently.

It involves collaboration between QA, developers, and product stakeholders. Severity, priority, and business impact are key decision factors. Proper triage ensures smooth release cycles.

Read: Defect Triage in Software Testing

Frequently Asked Questions (FAQs)

  • Is manual testing still relevant in an automation-driven world?
    Yes, manual testing remains highly relevant, especially for exploratory, usability, and early-stage product validation where human intuition and experience play a critical role.
  • When should a team choose manual testing over automation?
    Manual testing is ideal during initial development phases, for short-term projects, or when requirements frequently change and automation setup is not yet cost-effective.
  • What skills are essential for a manual tester today?
    A manual tester should have strong analytical thinking, attention to detail, domain knowledge, understanding of SDLC and STLC, and the ability to perform exploratory testing effectively.
You're 15 Minutes Away From Automated Test Maintenance and Fewer Bugs in Production
Simply fill out your information and create your first test suite in seconds, with AI to help you do it easily and quickly.
Achieve More Than 90% Test Automation
Step by Step Walkthroughs and Help
14 Day Free Trial, Cancel Anytime
“We spent so much time on maintenance when using Selenium, and we spend nearly zero time with maintenance using testRigor.”
Keith Powe VP Of Engineering - IDT
Privacy Overview
This site utilizes cookies to enhance your browsing experience. Among these, essential cookies are stored on your browser as they are necessary for ...
Read more
Strictly Necessary CookiesAlways Enabled
Essential cookies are crucial for the proper functioning and security of the website.
Non-NecessaryEnabled
Cookies that are not essential for the website's functionality but are employed to gather additional data. You can choose to opt out by using this toggle switch. These cookies gather data for analytics and performance tracking purposes.