1/79
Comprehensive 80-card review set covering key software testing concepts, methodologies, levels, quality control distinctions, principles, and STLC phases.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
What is Software Testing?
The process of checking whether software works as expected and meets its requirements.
What does Application Under Test (AUT) refer to?
The software or application currently being tested.
What is defined as a Defect in software testing?
A problem or flaw in software that can cause it not to work as expected.
What are the key benefits of software testing?
Finding bugs early, reducing fixing costs, improving security, software quality, performance, customer satisfaction, and reducing risks.
What is the core rule regarding early testing?
Test early = Find problems early = Cheaper to fix.
How does software testing achieve cost-effectiveness?
By finding bugs early, which costs less than fixing them later.
How does testing address security?
It helps find security weaknesses and vulnerabilities to protect the system and user information.
How does software testing impact product quality?
It ensures the software meets its requirements and provides a quality product.
How does software testing affect customer satisfaction?
It improves the user's experience by making the software work properly.
What is Verification in software testing?
Checking if the software follows the correct design and specifications.
What is the main question asked during Verification?
Are we building the product right?
What four areas does Verification focus on?
Design, specifications, business requirements, and development methods.
What is Validation in software testing?
Checking if the software satisfies user requirements.
What is the main question asked during Validation?
Are we building the right product?
What does Validation focus on?
User requirements and the actual needs of the user.
What is the memory trick to remember Verification vs Validation?
Verification connects to specifications, while Validation connects to user needs.
What is an Error in software testing?
An actual mistake made during software development or coding.
What is a Fault or Bug?
A problem that happens because of an error and can cause the system to fail.
What is a Failure in software testing?
When the system cannot perform the required task.
What is the sequence of software problem escalation?
Error -> Fault/Bug -> Failure.
In the sequence example, what represents the Error?
A programmer writing the wrong calculation.
In the sequence example, what represents the Fault/Bug?
The incorrect code remaining in the program.
In the sequence example, what represents the Failure?
The system giving the wrong result.
What is Manual Testing?
Testing performed without automated testing tools, where a human tester creates test cases, runs tests, checks results, and reports results.
What are the main disadvantages of Manual Testing?
It takes more time and uses more resources.
What is Automated Testing?
Testing performed using automated testing tools.
What types of testing are automated tools particularly useful for?
Load testing, stress testing, and regression testing.
What is the simple comparison between Manual and Automated testing?
Manual relies on a person, while Automated relies on a tool.
What are the two major approaches to testing?
Functional Testing and Non-Functional Testing.
What is Functional Testing?
Testing whether each function of the software works according to the requirements.
What is the simple question associated with Functional Testing?
What does the system do?
What main aspects does Functional Testing focus on?
Functions, features, inputs, outputs, and requirements.
Under which broader testing type does Functional Testing fall?
Black-Box Testing.
What is Non-Functional Testing?
Testing how well the system performs.
What is the simple question associated with Non-Functional Testing?
How well does the system work?
What specific characteristics can Non-Functional Testing test?
Performance, load, stress, scalability, security, and compatibility.
What is the memory trick for Functional vs Non-Functional testing?
Functional = WHAT; Non-functional = HOW WELL.
What is Black-Box Testing?
Testing the functionality of software without looking at its internal code or structure.
What is another name for Black-Box Testing?
Behavioral Testing.
What is the main focus of Black-Box Testing?
Input -> System -> Output.
What is Equivalence Class testing?
Dividing inputs into groups or classes that should behave similarly and testing representative values.
What is Boundary Value Testing?
Testing values at the edges or boundaries (lowest and highest limits) of an input range.
Why are boundary values tested in software testing?
Because errors commonly happen at boundaries.
What is Cause-Effect Graphing?
Testing combinations of inputs (causes) and their expected outputs (effects).
What is Pair-Wise Testing?
Testing combinations of two parameters at a time.
What is State-Based Testing?
Testing a system based on its different states and how inputs change those states.
What is White-Box Testing?
Testing the internal code, structure, and implementation of the program.
What is another name for White-Box Testing?
Structural Testing.
Who usually performs White-Box Testing?
Programmers / developers.
What is Control-Flow Testing?
Testing the flow of the program by covering statements and testing branch conditions as True and False.
What is Data-Flow Testing?
Testing how variables are declared, defined, used, and changed through the program.
What is Exhaustive Testing?
Testing every possible input and output value.
Why is Exhaustive Testing practically impossible in real-world systems?
Because there can be too many possible inputs (billions of values), taking too much time and money.
What are the four main levels of software testing?
Unit Testing, Integration Testing, System Testing, and Acceptance Testing.
What is Unit Testing?
Testing individual units or parts of a program.
Who usually performs Unit Testing and what testing approach is commonly used?
Programmers usually perform it using the white-box approach.
What is Integration Testing?
Testing whether individual software units work correctly when combined.
What is System Testing?
Testing the complete software as a whole.
What testing types can be included in System Testing?
Functionality testing, performance testing, security testing, and portability testing.
What is Acceptance Testing?
Testing performed when the software is ready to be handed to the customer/user to check if it is acceptable.
What is Alpha Testing?
Testing performed internally by the development team, using the system as if in a real environment.
What is Beta Testing?
Testing performed by users after internal testing, in their own/production environment.
What is Regression Testing?
Testing software again after changes, updates, or new features to ensure existing functions were not negatively affected.
What is Performance Testing?
Testing how efficiently and quickly the software performs its required tasks.
What is Load Testing?
Testing the system under a particular amount of users or data to see if it can handle the expected load.
What is Stress Testing?
Putting the system under high load to see how it behaves when heavily overloaded.
What is Software Quality Assurance (QA)?
Monitoring the software development process to make sure proper standards and methods are followed.
What is Software Quality Control (QC)?
A system used to maintain the quality of the software product.
What is a Software Audit?
An independent review of the organization's software development procedures and processes to check compliance with standards, rules, and regulations.
What does the principle 'Testing Shows Presence of Defects' state?
Testing can show that defects exist, but cannot prove that there are no defects.
What should testers consider since Exhaustive Testing is impossible?
Risk, priority, time, and cost.
What does the Early Testing principle state?
Testing should begin early in the SDLC because finding bugs early makes them cheaper to fix.
What is Defect Clustering and what principle is it related to?
Most defects are usually concentrated in a small number of modules; it relates to the Pareto Principle / 80-20 Rule.
What is the Pesticide Paradox in software testing?
If the same test cases are repeatedly used, they may eventually stop finding new defects.
How can testers address the Pesticide Paradox?
By reviewing test cases, updating test cases, and adding new test cases.
What does the principle 'Testing is Context Dependent' mean?
Testing depends on the type and purpose of the software (e.g., online banking vs e-commerce).
What is the Absence-of-Error Fallacy?
Having very few bugs does not automatically mean the software is useful if it does not meet business or user needs.
What is the Software Testing Life Cycle (STLC)?
A sequence of activities performed during software testing to ensure software quality, including verification and validation.
What is the difference between Entry Criteria and Exit Criteria?
Entry Criteria are conditions that must be completed BEFORE a testing phase begins; Exit Criteria must be completed BEFORE leaving a phase.
What is a Requirement Traceability Matrix (RTM)?
A document used to connect requirements with testing to track requirements and their tests.