Featured Mind map
Manual QA Interview Prep: Essential Testing Concepts
Manual QA interview preparation involves mastering testing fundamentals, understanding key concepts like QA vs. QC, and distinguishing various testing types. It also covers essential documentation, the Software Development and Testing Life Cycles, and bug management. This comprehensive knowledge ensures readiness for common interview questions and practical scenarios.
Key Takeaways
Testing ensures software quality and reduces risks.
Differentiate QA (process) from QC (product).
Understand various testing types and their purposes.
Master bug lifecycle and reporting essentials.
Familiarize with SDLC, STLC, and product lifecycles.
What are the core fundamentals of software testing?
Software testing systematically evaluates systems to identify defects, mitigate risks, and confirm adherence to requirements. It compares actual outcomes against expected results, ensuring quality before release. This process is vital for delivering reliable, functional software that meets user expectations effectively and efficiently.
- Testing: Evaluate software, find defects, verify requirements.
- Goals: Reduce risks, confirm compliance, inform business.
- Types: Static (no execution), Dynamic (with execution).
- Levels: Unit, Integration, System, Acceptance.
- Criteria: Definition of Ready/Done, Acceptance, Exit.
- Activities: Plan, monitor, analyze, design, execute, close.
What are the key concepts in software quality assurance?
Key QA concepts include distinguishing Quality Assurance (QA) from Quality Control (QC), and verification from validation. Understanding the seven principles of testing, test environment components, and the defect chain (error, defect, failure, incident) is crucial for effective quality efforts and clear communication within development teams.
- QA vs. QC: QA prevents issues (process), QC finds issues (product).
- Verification vs. Validation: Building right vs. building it right.
- 7 Principles: Guiding rules for effective testing practices.
- Test Environment: Isolated setup, mimics production conditions.
- Defect Chain: Error leads to Defect, causing Failure, resulting in an Incident.
What are the different types of software testing?
Software testing types vary by purpose, code access, and execution method. Functional testing checks what the system does, while non-functional assesses how well it performs. Categories also include tests for changes (like regression) and approaches based on code visibility (black-box, white-box). These diverse methods ensure comprehensive quality coverage.
- By Purpose: Functional (what it does) and Non-functional (how it performs).
- Non-functional: Performance, Load, Stress, Security, Usability, Compatibility.
- Related to Changes: Smoke, Sanity, Regression, Re-testing, Build Verification.
- By Code Access: Black Box, White Box, Gray Box.
- By Execution: Manual, Automation, Semi-automation.
- Special: Alpha, Beta, Exploratory, A/B, Recovery, Compliance, Operational.
What essential documents and reports are used in software testing?
Effective testing relies on clear documentation and reporting. This includes various requirements (functional, non-functional, business), detailed test cases, and concise checklists. Test plans, strategies, bug reports, and final test reports ensure traceability, guide execution, and support informed decision-making throughout the development cycle, contributing to overall project success.
- Requirements: Functional, Non-functional, Business requirements.
- Quality Requirements: Complete, consistent, testable, unambiguous, measurable.
- How to Test Requirements: Review, check for completeness, testability, consistency.
- Test Case: Detailed steps, data, expected results for specific checks.
- Checklist: Brief list of checks, quicker to create, less detailed.
- Test Plan: Document outlining scope, approach, resources, schedule, risks.
- Test Strategy: High-level document defining overall testing approach.
- Bug Report: Document for developers detailing defects, steps, severity, priority.
- Test Report: Summary of testing results, defects, risks, and release recommendation.
- RTM (Requirements Traceability Matrix): Links requirements, test cases, and defects.
What is the Software Development Life Cycle (SDLC)?
The Software Development Life Cycle (SDLC) is a structured process for developing and maintaining software. It progresses from an initial idea, through planning, requirements analysis, design, and development, to rigorous testing. Post-testing, the software is deployed and maintained, eventually reaching retirement. This systematic approach ensures efficient and organized software creation and evolution.
- Stages: Idea, Planning, Requirements Analysis, Design.
- Development, Testing, Deployment / Release.
- Maintenance, Retirement / Archive.
What are the phases of the Software Testing Life Cycle (STLC)?
The Software Testing Life Cycle (STLC) outlines specific activities executed during the testing process. It begins with requirement analysis for testability, followed by comprehensive test planning and test case design. Environment setup precedes test execution, which includes retesting and regression. The cycle concludes with test closure, involving reporting and analysis for thorough quality assessment.
- Phases: Requirement Analysis, Test Planning.
- Test Case Design, Test Environment Setup.
- Test Execution, Test Closure.
What is the Product Life Cycle (PLC) in software development?
The Product Life Cycle (PLC) describes a product's journey from its initial idea to its eventual decline or retirement. It includes discovery, planning, development, and testing. After launch, the product experiences growth and maturity phases, requiring continuous optimization and support, before eventually declining or being replaced. This framework guides product management decisions effectively.
- Stages: Idea, Discovery / Research, Planning, Development.
- Testing, Launch, Growth, Maturity.
- Decline / Retirement.
How does a bug progress through its life cycle?
The Bug Life Cycle illustrates the various states a defect goes through from its discovery to its resolution. It typically begins when a tester logs a new bug, which is then opened, assigned, and fixed. After retesting and verification by QA, it's closed. If unresolved, it may be reopened, or rejected if not a valid defect, ensuring proper defect management.
- New, Open, Assigned, In Progress.
- Fixed / Resolved, Retest, Verified, Closed.
- Reopened, Rejected, Deferred, Duplicate.
What is the difference between bug Severity and Priority?
Severity defines a defect's technical impact on the system's functionality, while Priority indicates the business urgency for its fix. Understanding this distinction helps teams manage defects effectively, ensuring critical issues are addressed promptly based on both technical impact and business needs for optimal product health and user satisfaction.
- Severity: Technical impact of the defect on the system.
- Priority: Business urgency of fixing the defect.
- Main Difference: Severity is technical, Priority is business-driven.
- Example: Typo on homepage (Low Severity, High Priority).
What are quick answers to common QA interview questions?
This section provides concise answers to frequently asked Manual QA interview questions, serving as a quick reference. It covers fundamental distinctions like testing's purpose, QA vs. QC, verification vs. validation, and the differences between smoke and sanity testing. It also clarifies retest vs. regression, severity vs. priority, and outlines STLC and Bug Life Cycle stages, ensuring readiness for rapid recall and confident responses.
- Testing: Evaluate software, find defects.
- QA vs QC: Process vs. Product quality.
- Verification vs Validation: Building right vs. right product.
- Smoke vs Sanity: Broad critical vs. narrow specific check.
- Retest vs Regression: Re-check fixed bug vs. no new breaks.
- Severity vs Priority: Technical impact vs. business urgency.
- STLC Stages: Analysis, planning, design, setup, execution, closure.
- Bug Life Cycle: New, Open, Assigned, Fixed, Retest, Verified, Closed.
Frequently Asked Questions
What is the primary goal of software testing?
Testing identifies defects, reduces risks, and ensures software meets requirements. It delivers high-quality products by verifying functionality and performance before release.
How do QA and QC differ in practice?
QA prevents defects by improving processes. QC finds defects in the product through testing. QA is process-focused; QC is product-focused.
Can you explain the difference between verification and validation?
Verification checks if we build the product right (e.g., code review). Validation checks if we build the right product (e.g., user acceptance testing).
What is the purpose of a test environment?
A test environment is an isolated setup mimicking production. Its purpose is accurate, reliable testing of functionality, performance, and stability.
What are the key stages of the Bug Life Cycle?
Key stages: New, Open, Assigned, In Progress, Fixed, Retest, Verified, Closed. Reopened if unresolved, Rejected if invalid.