ISTQB CTFL-AT Certified Tester Foundation Level Agile Tester Exam Dumps and Practice Test Questions Set 1 Q1-20
Visit here for our full ISTQB CTFL-AT exam dumps and practice test questions.
Question 1:
Which of the following best describes the role of a tester in an Agile team?
A) Solely responsible for finding defects in the system
B) Works collaboratively with the team to ensure quality throughout development
C) Manages the product backlog and prioritizes user stories
D) Writes code for features and performs unit testing only
Answer: B) Works collaboratively with the team to ensure quality throughout development
Explanation:
A) Solely focusing on finding defects misrepresents the tester’s role in Agile. In Agile, testing is not just about detecting bugs; it’s about influencing the quality of the product throughout the development lifecycle. A tester’s value is much broader than mere defect detection.
B) Working collaboratively with the team to ensure quality is the correct approach. In Agile, testers participate in planning, design, and continuous feedback activities. They work closely with developers, product owners, and business analysts to understand requirements, clarify ambiguities, and advocate for testability and quality from the start. They may also automate tests, perform exploratory testing, and provide early feedback on the functionality being developed.
C) Managing the product backlog and prioritizing user stories is primarily the responsibility of the Product Owner. Although testers may provide input on testability or risk for backlog items, they do not own backlog management. Confusing this responsibility with testing can lead to a misunderstanding of Agile roles.
D) Writing code for features and performing unit testing only describes the role of developers more than testers. While testers may contribute to automated testing scripts, their primary responsibility is broader and focuses on validating the system from an end-user perspective, ensuring requirements are met, and helping prevent defects, rather than solely coding or performing unit-level verification.
The reasoning for selecting B is that Agile testing emphasizes continuous collaboration, early involvement, and shared responsibility for quality. Testers are integral to planning, review, and iteration activities, contributing insights that improve both design and implementation. By collaborating across roles, testers ensure that quality is not just inspected after development but is built into the product continuously.
Question 2:
In Agile, what is the primary purpose of acceptance criteria for a user story?
A) To serve as detailed technical specifications for developers
B) To define conditions that must be met for the story to be considered complete
C) To outline project timelines and milestones
D) To document defects found during testing
Answer: B) To define conditions that must be met for the story to be considered complete
Explanation:
A) Acceptance criteria are not detailed technical specifications. Technical details may be included in design or implementation guidance, but acceptance criteria focus on behavior and outcomes from a user perspective. They define how the story will be evaluated rather than how it will be coded.
B) Defining conditions for story completion is correct. Acceptance criteria provide clear, measurable, and testable statements about expected system behavior. They help the team understand what “done” looks like and guide the creation of test cases. These criteria are critical for ensuring alignment between the business, development, and testing teams.
C) Outlining project timelines and milestones relates to project management, not acceptance criteria. While timelines are important for planning, they do not describe the functional or non-functional behavior required for a story’s completion.
D) Documenting defects found during testing is part of the defect tracking process, not acceptance criteria. Acceptance criteria exist before testing and help prevent ambiguity about whether a story has been implemented correctly. Defects are identified when actual behavior deviates from these criteria.
The reasoning behind choosing B is that acceptance criteria form the foundation for verification in Agile. They communicate expectations clearly, serve as a basis for automated or manual tests, and ensure that both developers and testers understand what successful completion entails. This focus on clear conditions enables teams to maintain quality and reduce misunderstandings.
Question 3:
Which type of testing is most appropriate for validating that a system meets user expectations in Agile?
A) Unit Testing
B) Exploratory Testing
C) Integration Testing
D) Performance Testing
Answer: B) Exploratory Testing
Explanation:
A) Unit testing focuses on individual components or functions of the software. While it is essential for ensuring that code works correctly at a granular level, it does not directly validate user expectations or overall system behavior.
B) Exploratory testing is correct because it allows testers to explore the system dynamically, simulating real-world usage and focusing on what matters to end-users. Testers can adapt test scenarios as they learn about the system, uncovering potential issues that scripted tests might miss. It is especially valuable in Agile, where requirements can evolve rapidly.
C) Integration testing verifies interactions between modules or systems. Although integration testing ensures that components work together as intended, it does not necessarily focus on validating the product against user needs or expectations.
D) Performance testing evaluates system behavior under load or stress. While important for quality, it does not verify whether the system meets functional expectations from a user perspective.
The reasoning for selecting B is that Agile emphasizes delivering value to users continuously. Exploratory testing complements scripted tests by focusing on usability, real-world scenarios, and risk areas. Testers can quickly adjust their approach as the system evolves, ensuring user expectations are met throughout iterative development.
Question 4:
During a sprint review, a tester notices that a feature does not meet the agreed acceptance criteria. What should the tester do first?
A) Log a defect and assign it to a developer
B) Inform the product owner and discuss potential implications
C) Ignore it and allow the team to handle it
D) Delay reporting until the next sprint
Answer: B) Inform the product owner and discuss potential implications
Explanation:
A) Logging a defect immediately may be necessary later, but jumping straight to defect logging without discussion could bypass collaborative problem-solving. Agile emphasizes communication and shared understanding.
B) Informing the product owner and discussing implications is correct. The product owner understands priorities and can decide whether the deviation requires immediate action or can be deferred. This collaborative approach ensures transparency and avoids misunderstandings about what constitutes “done.”
C) Ignoring the issue contradicts Agile principles. Quality concerns should always be raised promptly to ensure the product meets expectations and reduces risk.
D) Delaying reporting could lead to accumulation of unresolved defects, reducing the team’s ability to respond effectively. Agile encourages continuous feedback and rapid issue resolution.
The reasoning for selecting B is that Agile values communication, transparency, and collaboration. By discussing deviations with the product owner and the team, testers help prioritize fixes appropriately, ensure alignment with business needs, and maintain the focus on delivering value incrementally. Immediate defect logging without context could lead to inefficiency or miscommunication, making collaborative discussion the best initial step.
Question 5:
What is the main benefit of automated testing in Agile?
A) It completely replaces manual testing
B) It allows frequent regression testing with minimal effort
C) It guarantees defect-free software
D) It reduces the need for communication among team members
Answer: B) It allows frequent regression testing with minimal effort
Explanation:
A) Automated testing does not replace manual testing. Manual testing, especially exploratory and usability testing, is still necessary to validate user experience and adapt to changing requirements. Automation complements manual efforts.
B) Frequent regression testing with minimal effort is correct. Automated tests can be run repeatedly to check that existing functionality continues to work after new code changes. This capability is critical in Agile, where continuous integration and frequent releases are common. Automation saves time and ensures faster feedback, allowing teams to detect regressions early.
C) Automation does not guarantee defect-free software. While it improves coverage and efficiency, it cannot capture every possible defect, particularly those requiring human judgment, usability evaluation, or exploratory insights.
D) Automation does not reduce the need for communication. Agile emphasizes collaboration, and automated testing should be integrated with team discussions about quality, test results, and product improvements.
The reasoning for choosing B is that Agile development relies on rapid iteration and continuous delivery. Automated tests enable the team to validate that changes do not break existing functionality while freeing testers to focus on high-value exploratory testing. This balance ensures both speed and quality, making automation an essential tool in Agile without replacing human insight or communication.
Question 6:
Which Agile ceremony is primarily focused on reflecting on past work and identifying improvements for the next sprint?
A) Daily Stand-up
B) Sprint Planning
C) Sprint Retrospective
D) Sprint Review
Answer: C) Sprint Retrospective
Explanation:
A) Daily Stand-up is a brief meeting designed for team members to update each other on progress, plans, and impediments. While it fosters communication, it is not intended for in-depth reflection or process improvement discussions. Its primary goal is synchronization, not evaluation.
B) Sprint Planning is focused on defining the work to be completed in the upcoming sprint, including selecting backlog items and estimating effort. It sets the stage for the sprint but does not include retrospective reflection on past work.
C) Sprint Retrospective is correct. This ceremony provides a dedicated time for the team to evaluate what went well, what didn’t, and how processes could improve. It promotes continuous improvement, a key Agile principle, and helps the team implement actionable changes to increase efficiency, collaboration, and quality in future sprints. Retrospectives empower team members to identify recurring issues, celebrate successes, and collaboratively create solutions for improvement.
D) Sprint Review focuses on demonstrating the completed work to stakeholders to gather feedback on the product increment. It emphasizes evaluating the product rather than the team’s processes. While it provides insight into product value and functionality, it does not serve as the forum for process improvement or internal team reflection.
The reasoning behind selecting C is that Agile emphasizes learning from experience and iterative improvement. The retrospective allows the team to introspect, address process inefficiencies, and reinforce positive practices. Without this reflection, the team risks repeating mistakes or missing opportunities to enhance productivity and quality. By fostering open communication, retrospectives also encourage psychological safety, enabling honest discussion of challenges and failures.
Question 7:
In Agile, what is the main purpose of a Definition of Done (DoD)?
A) To specify technical implementation details
B) To provide clear criteria for completing a story or increment
C) To allocate tasks to team members
D) To track project budget and resources
Answer: B) To provide clear criteria for completing a story or increment
Explanation:
A) Specifying technical implementation details is not the main purpose of DoD. Technical guidance may be part of the development process, but DoD focuses on completion criteria rather than implementation methods.
B) Providing clear criteria for completing a story or increment is correct. DoD ensures that all team members share a consistent understanding of when work is considered complete. It typically includes meeting acceptance criteria, passing tests, completing code reviews, updating documentation, and confirming deployment readiness. This shared understanding improves quality, reduces rework, and aligns expectations across stakeholders.
C) Allocating tasks to team members is part of sprint planning and daily coordination. DoD does not dictate responsibilities or task assignment; it defines completion standards regardless of who performs the work.
D) Tracking project budget and resources is outside the scope of DoD. Financial and resource management are project management responsibilities, not quality or completion criteria.
The reasoning for selecting B is that a well-defined DoD prevents ambiguity about story completion. In Agile, where iterative development and fast feedback cycles are common, clarity on “done” ensures that increments are potentially releasable and meet agreed-upon quality standards. It also allows testers, developers, and product owners to align on expectations, reducing disputes and supporting continuous delivery.
Question 8:
Which Agile testing approach encourages writing tests before code implementation?
A) Exploratory Testing
B) Test-Driven Development (TDD)
C) Regression Testing
D) Ad-hoc Testing
Answer: B) Test-Driven Development (TDD)
Explanation:
A) Exploratory Testing is performed after code exists and focuses on discovering defects using tester experience and creativity. It does not prescribe writing tests before development.
B) Test-Driven Development is correct. TDD requires writing automated tests for a small piece of functionality before writing the corresponding code. Developers implement code only to pass the tests, ensuring that functionality is verified from the start. TDD reduces defects, promotes better design, and integrates testing into the development workflow.
C) Regression Testing focuses on verifying that new code changes do not break existing functionality. It is conducted after code changes rather than before, so it does not fulfill the preventive role of TDD.
D) Ad-hoc Testing is informal, unstructured, and usually reactive. It relies on tester intuition and experience rather than structured test creation, making it unsuitable as a preventive approach before coding.
The reasoning for selecting B is that TDD aligns with Agile principles of early feedback, continuous quality, and iterative development. Writing tests first encourages developers to clarify requirements and produce testable, maintainable code. It reduces the likelihood of defects and promotes confidence in the correctness of each increment.
Question 9:
Which of the following best describes exploratory testing in Agile?
A) Strictly following pre-written scripts
B) Discovering defects through simultaneous learning, test design, and execution
C) Performing automated regression tests only
D) Focusing solely on non-functional requirements
Answer: B) Discovering defects through simultaneous learning, test design, and execution
Explanation:
A) Strictly following pre-written scripts describes scripted testing, which is structured and pre-planned. While important, it does not allow testers to adapt and explore new behaviors dynamically.
B) Discovering defects through simultaneous learning, test design, and execution is correct. Exploratory testing involves testers actively exploring the system while designing tests in real-time. It combines learning about functionality, experimenting with inputs, and observing outcomes to uncover defects, particularly in areas that scripted tests may overlook. It is highly suited to Agile because of rapid iterations and evolving requirements.
C) Performing automated regression tests is focused on verification of known functionality, not dynamic exploration. While automation supports Agile, exploratory testing adds a human, adaptive perspective.
D) Focusing solely on non-functional requirements limits the scope of exploratory testing. Exploratory testing can evaluate functional, non-functional, usability, and security aspects depending on the tester’s focus.
The reasoning for selecting B is that Agile values adaptability and early feedback. Exploratory testing complements automated and scripted tests by uncovering issues in areas not easily anticipated. It encourages critical thinking and provides insights about usability, defects, and risk areas that improve overall product quality and user satisfaction.
Question 10:
In Agile, what is the primary purpose of regression testing?
A) To validate only new features
B) To ensure that existing functionality continues to work after changes
C) To replace exploratory testing
D) To evaluate system performance under load
Answer:
B) To ensure that existing functionality continues to work after changes
Explanation:
A) Validating only new features does not capture the essence of regression testing. While new features need testing, regression tests specifically check that previously implemented functionality remains unaffected by code changes.
B) Ensuring existing functionality continues to work is correct. Regression testing is essential in Agile due to frequent iterations and continuous integration. Automated regression suites enable teams to run tests efficiently and obtain quick feedback, helping prevent defects from being introduced into stable parts of the system.
C) Regression testing does not replace exploratory testing. Exploratory testing identifies new defects and risks that scripted or automated regression tests may miss. Both approaches complement each other.
D) Evaluating system performance under load is the focus of performance or stress testing, not regression testing. Performance concerns are a separate quality dimension.
The reasoning for selecting B is that Agile’s iterative cycles require continuous validation of previously delivered functionality. Regression testing maintains confidence in system stability, enables fast feedback, and allows the team to focus on incremental delivery without introducing regressions. It is a key enabler for maintaining quality in a rapidly evolving product.
Question 11:
What is the key advantage of pair programming in Agile development?
A) Reduces the need for testers
B) Encourages knowledge sharing and improves code quality
C) Eliminates the need for code reviews
D) Speeds up development by reducing collaboration
Answer: B) Encourages knowledge sharing and improves code quality
Explanation:
A) Pair programming does not reduce the need for testers. While it may improve code quality, testers remain essential for validation, exploratory testing, and independent verification.
B) Encouraging knowledge sharing and improving code quality is correct. Two developers working together on the same code bring diverse perspectives, detect defects early, and collectively improve understanding. Pair programming enhances maintainability, reduces errors, and fosters a learning culture within the team.
C) Pair programming complements, but does not eliminate, code reviews. Even with pair programming, additional review may be necessary for complex systems, ensuring higher assurance of correctness.
D) Speeding up development by reducing collaboration is misleading. Agile emphasizes collaboration as a strength. Pair programming temporarily increases the number of people working on the same code but improves quality and knowledge transfer, which is more valuable than raw speed.
The reasoning for selecting B is that pair programming aligns with Agile principles of collaboration, collective ownership, and continuous learning. It builds skills across the team, reduces defect density, and increases shared knowledge about the codebase.
Question 12:
Which practice in Agile ensures frequent integration of code changes with automated verification?
A) Continuous Integration (CI)
B) Waterfall Testing
C) Ad-hoc Testing
D) Manual Regression
Answer: A) Continuous Integration (CI)
Explanation:
A) Continuous Integration is correct. CI involves developers frequently integrating code changes into a shared repository. Automated builds and tests run to validate changes, detecting conflicts or defects early. CI is essential in Agile to maintain a releasable system, provide rapid feedback, and reduce integration issues.
B) Waterfall Testing occurs sequentially, often at the end of development. It lacks the iterative integration and early feedback that CI provides.
C) Ad-hoc Testing is informal and does not provide systematic verification of continuous code changes. It is valuable for exploratory purposes but cannot guarantee integration stability.
D) Manual Regression involves running tests manually, which is slower and cannot support the rapid pace of CI. Automation is required to provide frequent and reliable feedback.
The reasoning for selecting A is that CI supports Agile’s iterative, incremental delivery. By integrating frequently and validating changes automatically, CI minimizes integration risks, improves team confidence in each increment, and ensures that development and testing proceed smoothly in parallel.
Question 13:
Which of the following best describes Behavior-Driven Development (BDD)?
A) Writing tests after implementation to verify functionality
B) Writing scenarios in a business-readable language to guide development and testing
C) Focused solely on performance testing
D) Executing automated regression tests only
Answer: B) Writing scenarios in a business-readable language to guide development and testing
Explanation:
Option A suggests that writing tests after implementation is the standard approach in traditional testing. While this method can verify whether a feature works as intended, it is reactive rather than proactive. Traditional post-development testing does not guide design decisions or help ensure that the implementation aligns closely with business requirements from the outset. Behavior-Driven Development (BDD) differs significantly, as it emphasizes creating tests or scenarios before or during development. This early definition of expected behavior helps guide both coding and testing, ensuring that the software is built to meet the intended business outcomes rather than simply verifying functionality after it is implemented.
Option B is correct. In BDD, scenarios are written in a business-readable language, often using a structured format such as Given-When-Then. This language is understandable by both technical team members and non-technical stakeholders, including business analysts, product owners, or clients. By using a shared vocabulary, BDD bridges the communication gap between business requirements and technical implementation. Each scenario is derived from acceptance criteria and represents a concrete example of desired system behavior. These scenarios not only guide development but also form the basis for automated tests, ensuring that both the design and the resulting software align with business expectations. This collaborative approach reduces misunderstandings and misinterpretations, creating a clear, shared understanding of what “done” means for each feature.
Option C is incorrect because BDD is not primarily focused on performance testing. While performance requirements can be included in acceptance criteria, BDD is mainly concerned with functional behavior and the alignment of software with business goals. Its purpose is to specify, through examples, how the system should behave in various scenarios. Focusing solely on performance would neglect the central objective of BDD: ensuring that development outcomes are predictable, testable, and reflective of business intent.
Option D emphasizes that executing automated regression tests alone does not fully represent BDD. Although automation is often used in BDD to execute scenarios, the methodology is fundamentally about collaboration and behavior specification. BDD integrates specification, development, and testing, ensuring that all stakeholders share an understanding of expected behavior and that the resulting software behaves as intended.
The reasoning for selecting B is that BDD aligns closely with Agile principles such as collaboration, shared understanding, and incremental delivery. By defining expected behavior in a way that is clear to both technical and business participants, BDD ensures that development and testing are guided by the same expectations. This shared understanding reduces miscommunication, promotes alignment with business objectives, and enables the team to produce software that consistently meets stakeholder requirements, supporting high-quality, predictable delivery in iterative development cycles.
Question 14:
Which of the following describes the main purpose of a backlog refinement session?
A) To discuss and adjust sprint tasks daily
B) To review and prioritize product backlog items for future sprints
C) To demonstrate completed features to stakeholders
D) To conduct performance and load testing
Answer:
B) To review and prioritize product backlog items for future sprints
Explanation:
Option A states that daily discussion of sprint tasks occurs in the daily stand-up rather than during backlog refinement. This is accurate in describing the purpose of stand-ups: they are short, focused meetings where team members coordinate their work, report progress, and identify any obstacles preventing task completion. Daily stand-ups are designed to facilitate immediate communication and synchronization, allowing the team to adjust activities on a day-to-day basis. Backlog refinement, in contrast, is a planning-focused activity that occurs less frequently and is not intended for the real-time coordination of ongoing sprint tasks. Using the backlog refinement session for daily task discussions would reduce its effectiveness and could cause planning inefficiencies.
Option B is correct. Backlog refinement is specifically intended for reviewing and prioritizing items in the product backlog. During these sessions, the team ensures that upcoming user stories are clear, actionable, and have well-defined acceptance criteria. Effort estimates are often reviewed or revised, and any dependencies or potential blockers are discussed. This process allows the team to prepare stories for future sprints so that sprint planning can proceed smoothly without ambiguities or incomplete information. By regularly refining the backlog, the Product Owner and the team maintain a prioritized, groomed list of tasks that maximizes value delivery and ensures that upcoming sprints are well-organized. The iterative clarification of backlog items also allows for adaptive planning, keeping the team responsive to changing requirements and stakeholder needs.
Option C describes demonstrating completed features, which is part of the sprint review rather than backlog refinement. Sprint reviews focus on product validation and stakeholder feedback by showing the work completed during the sprint. The objective is to gather input, validate the product increment, and adjust priorities for future work. Backlog refinement does not involve demonstrations or validating completed work; its focus is entirely forward-looking, ensuring that upcoming work is properly prepared for the development team.
Option D notes that conducting performance testing is unrelated to backlog refinement. Performance or other specialized testing is planned separately and is not a primary concern of backlog grooming sessions. While backlog items may note testing requirements, the refinement process is centered on clarity, prioritization, and readiness rather than executing or planning detailed testing activities.
The reasoning for selecting B is that backlog refinement ensures the backlog is well-groomed, prioritized, and actionable. By clarifying user stories, acceptance criteria, and dependencies, the team can plan upcoming sprints effectively, reduce ambiguities, and maintain a steady workflow. This disciplined approach to backlog management helps Agile teams achieve predictable, continuous delivery while adapting to changing priorities and stakeholder needs.
Question 15:
Which type of testing is particularly useful for verifying new functionality without affecting existing features?
A) Unit Testing
B) Regression Testing
C) Load Testing
D) Smoke Testing
Answer: B) Regression Testing
Explanation:
Option A, Unit Testing, focuses on verifying individual components or modules of code in isolation. While it ensures that each small piece of the system works correctly, it does not examine the interactions between new features and existing functionalities. Therefore, relying solely on unit testing could allow integration issues or unexpected regressions to go undetected, making it insufficient for verifying the broader system behavior after changes. Unit testing is critical for maintaining code quality at a micro-level but does not guarantee stability across the application.
Option B, Regression Testing, is correct. Regression testing aims to detect whether recent code changes, such as new features or bug fixes, have adversely affected the existing system. This type of testing can be automated and executed frequently, especially in Agile environments with iterative development cycles. Regression suites help ensure that both old and new functionality work as intended, preventing unintended side effects that could compromise system reliability. This makes regression testing an essential safety net in continuous delivery pipelines where changes are incremental and frequent.
Option C, Load Testing, evaluates system performance under heavy or peak usage conditions. It measures response times, throughput, and system stability when handling stress, but it does not verify functional correctness. While load testing is valuable for performance assurance, it does not confirm whether newly implemented features integrate correctly with existing modules. Relying on load testing alone would leave functional regressions undetected, which could impact the user experience and software reliability.
Option D, Smoke Testing, involves executing a basic set of tests to verify that the core functionalities of an application are operational after a new build. It is intended as a quick check to ensure that the build is stable enough for further testing. While smoke testing is useful for initial verification, it is not comprehensive and does not provide detailed insight into whether existing features remain unaffected by new functionality.
The reasoning for selecting B is that regression testing directly addresses the risk introduced by new changes. In Agile development, where code evolves rapidly, regression testing protects the integrity of the existing system while enabling teams to deliver new functionality confidently. It balances the need for speed and quality, ensuring that enhancements do not disrupt previously tested and approved functionality. By running automated regression tests after every code integration, teams can quickly identify and fix defects, maintaining a stable, reliable product incrementally.
Question 16:
What is the main purpose of the daily stand-up meeting in Agile?
A) To report progress to management
B) To synchronize team activities and identify blockers
C) To review completed work with stakeholders
D) To assign new tasks to developers
Answer: B) To synchronize team activities and identify blockers
Explanation:
Option A suggests that daily stand-ups exist primarily to report progress to management, but this misinterprets the meeting’s purpose. The daily stand-up is not a status report for management; rather, it is a collaborative session for the development team. Management involvement is typically minimal, and the focus is on team communication, not hierarchical reporting. Treating the stand-up as a reporting forum undermines its agility and reduces the team’s ability to self-organize.
Option B is correct. The daily stand-up is designed for team members to synchronize activities and surface obstacles that might hinder progress. Each participant briefly explains what they did the previous day, plans for the current day, and highlights any blockers. This ensures that the team maintains alignment, detects risks early, and can coordinate responses quickly. It fosters transparency and encourages proactive problem-solving, enabling the team to remain on track toward sprint goals while adapting to change dynamically.
Option C confuses the stand-up with the sprint review. Reviewing completed work with stakeholders happens at the end of a sprint, not daily. The stand-up’s focus is on ongoing tasks and immediate coordination, not formal demonstrations or feedback from external parties. Misusing it for stakeholder reporting would reduce the meeting’s efficiency and purpose, leading to longer, less effective gatherings.
Option D implies that tasks are assigned by a manager during the stand-up, but Agile promotes self-organizing teams. Developers collaboratively decide who works on what, based on priority and expertise, without centralized direction. The stand-up serves as a coordination and planning checkpoint rather than a task allocation session.
The reasoning for selecting B is that the daily stand-up is essential for maintaining collaboration, visibility, and rapid problem resolution within Agile teams. By enabling team members to coordinate work and address obstacles immediately, it ensures that progress continues smoothly. It also strengthens team communication and accountability, providing a structured yet flexible mechanism to keep the sprint on course. The stand-up supports iterative development, where frequent feedback and adjustments are critical to achieving project objectives efficiently.
Question 17:
In Agile, who is responsible for prioritizing the product backlog?
A) Scrum Master
B) Tester
C) Product Owner
D) Developer
Answer: C) Product Owner
Explanation:
Option A, Scrum Master, facilitates Agile processes, coaches the team, and removes impediments but does not make decisions about backlog priority. While the Scrum Master ensures that the team follows Agile practices, prioritization remains outside their role. Assigning this responsibility to the Scrum Master could undermine stakeholder value alignment and lead to improper sequencing of work items.
Option B, Tester, contributes to backlog refinement by providing feedback on quality and risk, but testers do not control the order of backlog items. Their perspective influences priority decisions indirectly, highlighting dependencies, potential defects, and areas of high impact. Testers play a supporting role in backlog discussions rather than acting as the primary decision-makers.
Option C, Product Owner, is correct. The Product Owner represents stakeholders and customers, making informed decisions about which backlog items deliver the highest value. They balance business objectives, customer needs, dependencies, and team capacity to prioritize work effectively. This role ensures that the team focuses on delivering the most impactful functionality incrementally, maximizing return on investment and supporting Agile principles of iterative delivery.
Option D, Developer, provides technical estimates, effort assessments, and risk analysis to inform backlog decisions but does not determine priority. Developers’ input helps the Product Owner make informed decisions but does not replace the owner’s authority over sequencing and value-based prioritization.
The reasoning for selecting C is that backlog prioritization drives value delivery and aligns development with business goals. The Product Owner’s authority ensures that the team consistently works on the most valuable items first, integrating stakeholder input, business strategy, and technical feasibility. This prioritization process is fundamental to Agile’s incremental and iterative approach, enabling adaptive planning, responsive development, and continuous delivery of functionality that meets both user and organizational needs.
Question 18:
Which practice emphasizes automated tests executed every time code is integrated into the main repository?
A) Continuous Integration
B) Pair Programming
C) Manual Testing
D) Retrospective
Answer: A) Continuous Integration
Explanation:
Option A, Continuous Integration (CI), is correct. CI involves frequently merging code changes into a shared repository while automatically running tests to validate correctness. Automated testing detects defects early, reduces integration problems, and ensures that new code does not break existing functionality. CI encourages frequent commits, improves feedback loops, and supports Agile practices such as iterative delivery and continuous quality assurance.
Option B, Pair Programming, is a collaborative development technique where two developers work together at one workstation. While it enhances code quality and knowledge sharing, it does not inherently involve automated testing or continuous integration. Its focus is on development process improvement rather than verification or integration feedback.
Option C, Manual Testing, involves human testers executing predefined test cases. It cannot provide rapid feedback for every integration and is not suitable for automated CI pipelines. While valuable for exploratory and usability testing, manual testing is too slow and labor-intensive to ensure immediate detection of integration defects.
Option D, Retrospective, is a process-focused meeting where the team reflects on recent iterations to improve performance. It does not deal with code integration or testing but rather team processes, communication, and workflow adjustments.
The reasoning for selecting A is that CI automates testing and ensures that all code merges are verified immediately. This practice reduces the likelihood of defects propagating through the system, supports Agile’s incremental delivery, and provides confidence that the software remains stable. By detecting issues early, CI helps teams maintain high quality while enabling rapid development cycles, aligning with Agile principles of continuous feedback and improvement.
Question 19:
Which of the following is true about Agile test planning?
A) Plans are rigid and created once at the start of the project
B) Planning is incremental, adaptive, and evolves with the project
C) Testers plan independently without collaboration
D) Planning is unnecessary in Agile
Answer: B) Planning is incremental, adaptive, and evolves with the project
Explanation:
Option A reflects Waterfall practices, where plans are fixed upfront and rarely adjusted. Such rigid planning does not suit Agile’s iterative and adaptive nature, where changes in requirements or scope are frequent. In Agile, adhering to a static plan could lead to wasted effort, irrelevant testing, and delayed responses to emerging risks or priorities.
Option B is correct. Agile test planning is dynamic and evolves alongside the project. Teams adjust priorities, testing scope, and techniques based on ongoing feedback, risk assessment, and newly discovered issues. Incremental planning ensures that testing remains relevant, focused, and aligned with the product backlog, supporting continuous delivery and iterative development. Collaboration with stakeholders, developers, and testers allows the team to adapt plans efficiently as circumstances change.
Option C, suggesting independent planning by testers, contradicts Agile principles of collaboration and cross-functional teamwork. Testers must coordinate with developers and Product Owners to align testing strategy with evolving requirements. Independent planning could result in missed risks, redundant effort, or misaligned priorities.
Option D, claiming planning is unnecessary, misunderstands Agile. While Agile reduces upfront planning, it does not eliminate the need for planning entirely. Continuous and adaptive planning is essential to manage risks, ensure coverage, and maintain high quality throughout the iterative development process.
The reasoning for selecting B is that adaptive test planning allows teams to respond effectively to change, prioritize testing based on value and risk, and ensure that resources are used efficiently. It supports continuous quality improvement, facilitates communication, and ensures testing remains relevant to the evolving product. Agile test planning balances flexibility with structure, allowing teams to maintain control while embracing iterative delivery and ongoing feedback.
Question 20:
Which of the following best describes the purpose of acceptance test-driven development (ATDD)?
A) Tests are written after implementation to verify functionality
B) Tests are defined collaboratively by developers, testers, and business stakeholders before implementation
C) Focuses solely on automated regression
D) Eliminates the need for exploratory testing
Answer: B) Tests are defined collaboratively by developers, testers, and business stakeholders before implementation
Explanation:
Option A represents reactive testing, where tests are created after code is implemented. While this approach verifies functionality, it does not ensure that the implementation aligns with requirements from the outset. ATDD is proactive, emphasizing early alignment on expectations and desired outcomes.
Option B is correct. ATDD involves defining acceptance criteria collaboratively before coding begins. Developers, testers, and business stakeholders work together to create tests that reflect business requirements and user expectations. This ensures shared understanding, reduces ambiguity, and guides development toward building the correct functionality from the start. ATDD supports communication, prevents misunderstandings, and increases confidence in delivering value.
Option C, focusing solely on automated regression, misrepresents ATDD. While automated tests may be part of the practice, ATDD’s primary goal is collaboration and clarity, not regression coverage. The collaborative definition of acceptance criteria drives both manual and automated testing, guiding development and verifying that the system meets requirements.
Option D suggests that ATDD removes the need for exploratory testing, which is incorrect. Exploratory testing remains vital for discovering unexpected behaviors and edge cases. ATDD complements exploratory testing by providing structured, pre-defined acceptance tests but does not replace exploratory investigation.
The reasoning for selecting B is that ATDD ensures that all relevant stakeholders share a common understanding of what “done” means before development begins. By defining acceptance tests collaboratively, ATDD reduces misunderstandings, aligns business and technical perspectives, and guides iterative development. This practice fosters early feedback, mitigates risks of rework, and improves overall software quality, making it a cornerstone of Agile’s iterative, collaborative approach.
Popular posts
Recent Posts
