Software Testing

0%
Theory
Quiz

    Testing Fundamentals & Principles

    • Explain the difference between verification and validation. At what stages of the development lifecycle does each occur?

      Junior
    • Can you name three of the "Seven Principles of Software Testing" and explain how they influence your approach to writing code?

      Junior
    • What is the difference between an Error, a Bug, a Defect, and a Failure?

      Junior
    • Explain the difference between QA, QC, and Testing.

      Junior
    • What is the difference between functional and non-functional testing, and can you give examples of each?

      Junior
    • What is the difference between positive testing and negative testing, and why do you need both?

      Junior
    • What is the primary purpose of software testing, beyond finding bugs, what value does it provide to a project?

      Junior
    • What is the "absence-of-errors fallacy," and why is a bug-free system not necessarily a successful one?

      Mid
    • Explain the "Pesticide Paradox" in software testing. How do you mitigate it in a long-running project?

      Mid
    • Explain the principle that 'exhaustive testing is impossible.' How do you decide when you have tested 'enough'?

      Mid
    • Explain the principle that 'testing shows the presence of defects, not their absence.' How does this affect how you communicate test results?

      Mid
    • What is 'error guessing,' and how do you use your experience as a developer to perform it effectively?

      Mid
    • What is the psychology of testing, and why is an independent tester often more effective at finding defects than the developer who wrote the code?

      Mid
    • Explain the 'defect clustering' principle and how the Pareto principle applies to where bugs are found in a system.

      Mid
    • What does the testing principle 'testing is context-dependent' mean, and how would your approach differ between an e-commerce site and medical software?

      Mid

    Testing Types & Levels

    • What is the difference between a smoke test and a sanity test? When would you run one versus the other?

      Junior
    • What is the difference between Black-box, White-box, and Grey-box testing?

      Junior
    • What are Alpha and Beta testing, and at what stage of the SDLC do they occur?

      Junior
    • What is the difference between black-box and white-box testing, and when would a developer use one over the other?

      Junior
    • Explain the difference between Static Testing and Dynamic Testing.

      Junior
    • What are the conceptual differences between unit, integration, and system testing, and what is the primary goal of each?

      Junior
    • What is the conceptual difference between a unit test and an integration test? When would a bug pass a unit test but fail an integration test?

      Mid
    • What is 'Exploratory Testing' and how does it differ from 'Ad-hoc Testing'?

      Mid
    • What is end-to-end testing, and how does it differ from system testing?

      Mid
    • Compare "Big Bang" integration testing with "Incremental" integration (Top-down vs. Bottom-up). What are the tradeoffs regarding stubs and drivers?

      Senior
    • What are the different integration testing strategies (sandwich/hybrid) and where do they fit relative to top-down and bottom-up?

      Senior

    Test Automation

    • Explain the 'Arrange-Act-Assert' (AAA) pattern.

      Junior
    • What is the purpose of fixtures and setup/teardown in tests, and why is proper cleanup important?

      Junior
    • Describe the Test Automation Pyramid. Why are unit tests at the base and E2E tests at the peak? What happens to a project that follows the 'Ice Cream Cone' anti-pattern?

      Mid
    • Explain the conceptual differences between a Mock, Stub, Fake, Spy, and Dummy. When would you choose a Fake over a Mock?

      Mid
    • What are the 'FIRST' principles of a good unit test?

      Mid
    • What is the Page Object Model, and how does it improve the maintainability of UI automation?

      Mid
    • What is "headless" browser testing, and what are the tradeoffs between headless and headed execution in a pipeline?

      Mid
    • How do you decide what to automate versus what to test manually or through exploratory testing?

      Mid
    • What is the difference between data-driven and keyword-driven test automation frameworks?

      Mid
    • What is snapshot testing, and what are its benefits and pitfalls?

      Mid
    • What are 'Flaky Tests,' what causes them, and how do you handle them in a CI environment?

      Senior
    • What is a 'Test Oracle' in the context of automated testing? How do you know if the output of a test is actually correct?

      Senior
    • How does Property-Based testing differ from traditional Example-Based unit testing? When is it most effective?

      Senior

    Defect Management & Metrics

    • Explain the difference between 'Bug Severity' and 'Bug Priority' with an example of a High Severity / Low Priority bug.

      Junior
    • Describe the typical states a bug goes through from 'New' to 'Closed.' What does it mean if a bug is 'Deferred'?

      Junior
    • Why is it generally accepted that the cost of fixing a bug increases as it moves further along the SDLC? Can you give a conceptual example?

      Junior
    • What information should a good defect/bug report contain to make it actionable for a developer?

      Junior
    • What is "Defect Leakage," and how is it used as a metric for the effectiveness of a QA process?

      Mid
    • What is defect density, and how is it calculated and used?

      Mid
    • What is Defect Removal Efficiency, and how does it measure the effectiveness of your testing process?

      Senior

    Test Process & Management

    • What are 'Entry Criteria' and 'Exit Criteria' for a testing phase?

      Mid
    • Explain the difference between regression testing and confirmation testing (re-testing). Why is regression testing so critical in Agile environments?

      Mid
    • What is a Requirement Traceability Matrix, and why is it important for ensuring full test coverage of a project's requirements?

      Mid
    • What is a 'Regression Test,' and how do you decide which tests to include in a regression suite?

      Mid
    • What is the difference between a 'Test Plan' and a 'Test Strategy'?

      Mid
    • Can you walk me through the phases of the fundamental test process, from planning and monitoring through analysis, design, implementation, execution, and completion?

      Mid
    • Why are managing test data and test environments important, and what challenges do they present?

      Mid
    • What is a test policy and how does it relate to a test strategy and test plan?

      Mid
    • What is risk-based testing, and how do you prioritize what to test when time is limited?

      Senior
    • How do you approach test estimation for a project or a sprint?

      Senior

    Test Design Techniques

    • Explain Boundary Value Analysis. Why are defects more likely to occur at the edges of input ranges rather than in the middle?

      Junior
    • What is equivalence partitioning, and how does it help reduce the total number of test cases while maintaining coverage?

      Junior
    • Explain 'Equivalence Partitioning' and provide a real-world example.

      Junior
    • What is the difference between Equivalence Partitioning and Boundary Value Analysis?

      Junior
    • What is the difference between a test scenario, a test case, and a test script?

      Junior
    • What makes a good test case? What fields or characteristics should a well-written test case have?

      Junior
    • When would you use a 'Decision Table' versus 'State Transition Testing'?

      Mid
    • How would you use Equivalence Partitioning and Boundary Value Analysis to reduce a large set of possible inputs to a manageable number of test cases?

      Mid
    • When would you use a Decision Table to design your test cases instead of simple input-output mapping?

      Mid
    • What is use-case testing, and when is it an appropriate black-box design technique?

      Mid
    • Explain state-transition testing and when it is the most suitable design technique.

      Mid
    • What is pairwise (all-pairs) testing, and how does it dramatically reduce the number of test combinations needed?

      Senior

    Development Methodologies & Lifecycle

    • Describe the Red-Green-Refactor cycle of Test-Driven Development. What are the primary benefits of writing the test before the code?

      Mid
    • What is Behavior-Driven Development (BDD)? How does the 'Given-When-Then' syntax help bridge the gap between technical and non-technical stakeholders?

      Mid
    • What is the 'Definition of Done' (DoD) in an Agile context and how does testing fit into it?

      Mid
    • How does the V-Model map specific testing levels to different phases of the software development lifecycle?

      Mid
    • What is User Acceptance Testing, and how does it differ from operational, contractual, and regulatory acceptance testing?

      Mid
    • What is the role of a tester on an Agile/Scrum team, and how does it differ from the traditional waterfall QA role?

      Mid
    • Briefly explain the Agile Testing Quadrants. How do they help a team balance business-facing vs. technology-facing tests?

      Senior
    • What is the W-model, and how does it improve on the V-model's treatment of testing activities?

      Senior
    • What is ATDD (Acceptance Test-Driven Development), and how does it differ from TDD and BDD?

      Senior

    Static Testing & Reviews

    • What are the different types of reviews in static testing: informal review, walkthrough, technical review, and inspection, and how do they differ in formality and purpose?

      Mid
    • What can static analysis and code reviews find that dynamic testing cannot?

      Mid
    • Explain the difference between Static Application Security Testing (SAST) and Dynamic Application Security Testing (DAST). What can one find that the other cannot?

      Senior
    • What is penetration testing, and how does it differ from vulnerability scanning?

      Senior

    White Box & Coverage

    • Explain the difference between Statement Coverage and Branch (Decision) Coverage. Why is 100% statement coverage not sufficient to prove a path is bug-free?

      Mid
    • Why is 100% Code Coverage not a guarantee that the software is bug-free?

      Mid
    • What test coverage metrics do you track, and what are the limitations of using coverage as a quality metric?

      Mid
    • What is mutation testing? How does it help you measure the quality of your tests rather than just the quantity of code covered?

      Senior
    • What is 'Cyclomatic Complexity' and how does it impact your test strategy?

      Senior
    • What is the purpose of MC/DC, and why is it used in safety-critical systems?

      Senior
    • What is path coverage, and how does it relate to statement and branch coverage?

      Senior
    • Explain the difference between condition coverage and decision coverage in white-box testing.

      Senior

    Ci Cd & Continuous Testing

    • What does it mean to 'shift left' in the testing process, and what are the primary benefits for a development team?

      Mid
    • How does 'Continuous Testing' differ from traditional scheduled testing phases in a CI/CD environment?

      Mid
    • Explain the concept of Consumer-Driven Contract Testing. How does it solve the problem of breaking changes in a microservices architecture?

      Senior
    • Explain 'Shift-Right' testing and the concept of 'Testing in Production'.

      Senior
    • What does it mean to "Shift-Left" in testing, and what is "Shift-Right" testing (Testing in Production), including techniques like Canary and Feature Flags?

      Senior
    • What is DevTestOps (or DevOps from a testing perspective), and how does testing integrate across the delivery flow?

      Senior
    • What are quality gates in a CI pipeline, and how do you decide what criteria should block a release?

      Senior

    Non Functional Testing

    • What is compatibility (cross-browser/cross-device) testing, and why is it necessary?

      Junior
    • What is installation testing, and what scenarios should it cover?

      Junior
    • Explain the difference between load testing, stress testing, and spike testing. What specific information does each provide about system scalability?

      Mid
    • What is exploratory testing, and why is it still valuable even if you have 100% automated test coverage?

      Mid
    • Explain the difference between Scalability Testing and Volume Testing.

      Mid
    • What is the difference between Performance testing and Scalability testing?

      Mid
    • Why is accessibility testing considered a non-functional test, and what are the core POUR principles you should test for?

      Mid
    • What is usability testing, and how do you evaluate whether a product is usable?

      Mid
    • What is the difference between localization and internationalization testing?

      Mid
    • What is soak (endurance) testing, and what kind of defects does it uncover that a short load test would miss?

      Mid
    • What is 'Fuzz Testing' (Fuzzing) and when would you use it?

      Senior
    • What is 'Chaos Engineering' and how does it relate to testing for reliability?

      Senior
    • What are recovery testing and reliability testing, and how do you design tests for them?

      Senior