Consider an online application that allows registered users to pay the annual car tax based on the vehicle’s engine power in kW. Given the following user story:
"As a customer I need the online application to calculate the annual car tax amount that I need to pay for my car:
* If the power of the vehicle is less than 20 kW, then the annual car tax is free
* If the power of the vehicle is more or equal than 20 kW but less or equal than 150 kW, then the annual car tax is 250 Euros
* If the power of the vehicle is more than 150 kW, then the annual car tax is 750 Euros" What is the MOST suitable use of a black-box test design technique for this user story?
Correct Answer:
C
Equivalence partitioning is a black-box test design technique that divides the input domain of a system into classes of data from which test cases can be derived. The idea is that if a system works correctly for a representative value from an equivalence class, it will work correctly for all values from that class, and vice versa. Equivalence partitioning reduces the number of test cases by eliminating redundant ones. For the given user story, equivalence partitioning is the most suitable technique because it can test the different outcomes of the annual car tax calculation based on the power of the vehicle, which is the main input for the system. By testing one value from each partition, the tester can verify the functionality of the system and detect any errors in the calculation logic. The other techniques are not as suitable because they do not focus on the inputdomain of the system, but rather on the conditions, transitions, or scenarios that are not directly related to the user story. References:
✑ : ISTQB® Foundation Level Agile Tester Syllabus, Version 2014, Section 2.2.2
✑ : ASTQB Agile Tester Certification Resources, Agile Testing Foundations, Chapter 3, Section 3.2.2
✑ : 3
Which of the following sentences about the integration of development and testing activities
in Agile projects is INCORRECT?
Correct Answer:
B
Testers replace developers in writing unit test automation scripts. Comprehensive Explanation: The integration of development and testing activities in Agile projects is based on the principle of cross-functional teamwork, where all team members collaborate and share their skills and knowledge to achieve a common goal. In the context of testing, this means that testing is not seen as a separate activity or phase, but as an integral part of the development process. Therefore, the following sentences are correct:
✑ While developers develop automated unit test scripts, testers write automated system level tests. This is an example of how developers and testers can work in parallel and complement each other’s testing efforts. Developers can focus on testing the internal quality of the code, while testers can focus on testing the external quality of the product.
✑ Developers write acceptance criteria and test cases, together with testers. This is an example of how developers and testers can work together to define and verify the user requirements and expectations. Developers can provide their technical expertise and input, while testers can provide their business and user perspective and feedback.
✑ Developers and testers may work as a pair to develop and test a feature. This is an example of how developers and testers can work closely and interactively to deliver a feature. Developers and testers can exchange ideas, suggestions, and information, and support each other in the coding and testing tasks.
The following sentence is incorrect:
✑ Testers replace developers in writing unit test automation scripts. This is not a valid example of the integration of development and testing activities in Agile projects, because it implies that testers take over the responsibility of developers, rather than collaborate with them. Testers should not replace developers in writing unit test automation scripts, because developers have more knowledge and experience in coding and debugging, and because unit testing is an essential part of the development process. Testers should instead work with developers to ensure that the unit test automation scripts are adequate, effective, and maintainable. References: ISTQB® Foundation Level Agile Tester Syllabus1, Section 1.2.1, page 9; ISTQB® Glossary of Testing Terms2, version 4.0, pages 16 and 55.
Which of the following statements about Agile retrospectives is CORRECT?
Correct Answer:
B
An Agile retrospective is a regular meeting where the team reflects on their work process and identifies the areas for improvement12. The following statements about Agile retrospectives are correct12:
✑ During Agile retrospectives, testers should be encouraged to provide constructive
suggestions on both testing and non-testing activities, as testing is an integral part of the Agile team and testers can contribute to the overall quality of the product and the process.
✑ In an Agile retrospective, the moderator can encourage and make sure that good practices are kept by the team, by asking what the team is doing well. This helps to reinforce the positive aspects of the team’s work and to appreciate the team members’ efforts and achievements.
✑ Agile retrospectives should be focused mainly on impediments that are within the control of the team because these issues are more actionable and can be resolved by the team. Impediments that are outside the control of the team should also be discussed, but they may require the involvement of other stakeholders or external parties to be addressed.
The following statement about Agile retrospectives is incorrect12:
✑ Unlike working sessions or meetings held in non-Agile projects, Agile retrospectives do require follow-up activities. The team should agree on the action items that result from the retrospective and assign them to the responsible team members. The team should also monitor the progress and effectiveness of the action items in the next iteration and review them in the next retrospective.
Therefore, the correct answer is B, as it is the only statement that is correct about Agile retrospectives. References: ISTQB Foundation Level Agile Tester Extension Syllabus1, page 24; ISTQB Agile Tester Sample Exam2,
A calculator application is being developed. The third sprint has been planned to add functionality to the calculator to allow scientific calculations.
Which TWO examples below represent activities that would likely be managed on an agile task board for the third sprint?
1) A task to design the features planned for the next sprint.
2) A task to run an acceptance test for a user story.
3) A task to automate regression tests.
4) A task to participate in training in preparation for the fourth sprint.
5) A task to produce a daily progress report for the agile team members.
Correct Answer:
A
According to the ISTQB Tester Foundation Level Agile Tester syllabus, an agile task board is a visual tool that displays the status of the work items in an agile sprint. The task board typically shows the user stories, tasks, and their progress from “to do” to “done”. The task board helps the agile team to monitor and coordinate their work, and to communicate with stakeholders. Therefore, the examples that represent activities that would likely be managed on an agile task board for the third sprint are those that are related to the user stories, tasks, and their progress in the current sprint. Option A is the correct answer, as it contains two examples of such activities: running an acceptance test for a user story, and automating regression tests. These are both tasks that are part of the testing process in the current sprint, and their status can betracked on the task board. Option B is not a correct answer, as it contains two examples of activities that are not related to the current sprint: designing the features planned for the next sprint, and participating in training in preparation for the fourth sprint. These are both activities that are part of the planning or learning process for the future sprints, and they are not managed on the task board. Option C is also not a correct answer, as it contains two examples of activities that are not related to the current sprint: participating in training in preparation for the fourth sprint, and producing a daily progress report for the agile team members. These are both activities that are part of the learning or reporting process, and they are not managed on the task board. Option D is also not a correct answer, as it contains two examples of activities that are not related to the current sprint: designing the features planned for the next sprint, and producing a daily progress report for the agile team members. These are both activities that are part of the planning or reporting process, and they are not managed on the task board. References: ISTQB Tester Foundation Level Agile Tester syllabus, section 2.1.1, page 14; ISTQB Tester Foundation Level Agile Tester syllabus, section 2.1.2, page 15; ISTQB Tester Foundation Level Agile Tester syllabus, section 2.2.1, page 16; ISTQB Tester Foundation Level Agile Tester syllabus, section 2.2.2, page 17.
Which of the following is the BEST way for a test team to keep its independence when working in an Agile development environment?
Correct Answer:
C
According to the ISTQB Tester Foundation Level Agile Tester syllabus, one of the key principles of agile testing is that testers are integrated into the agile team and work closely with developers and other stakeholders. However, this does not mean that testers lose their independence or objectivity. Testers should still be able to provide an unbiased view of the quality of the software and challenge the assumptions and decisions made by the team. Therefore, option C is the best way for a test team to keep its independence when working in an agile development environment, as it allows testers to be part of the agile team, but also report to a different manager than the developers, who can support their professional development and ensure their independence. Option A is not a good way to keep independence, as it limits the transparency and collaboration between testers and developers, which are essential for agile testing. Option B is also not a good way to keep independence, as it creates a physical and organizational barrier between the test automation team and the agile development team, which can hinder communication and feedback. Option D is also not a good way to keep independence, as it creates an inconsistency and imbalance between the testers who are co-located with the agile development team and those who are not, which can affect the quality and efficiency of the testing process. References: ISTQB Tester Foundation Level Agile Tester syllabus, section 1.2.1, page 91; ISTQB Tester Foundation Level Agile Tester syllabus, section 1.2.2, page 101; ISTQB Tester Foundation Level Agile Tester syllabus, section 2.1.1, page 141; ISTQB Tester Foundation Level Agile Tester syllabus, section 2.2.1, page 161; ISTQB Tester Foundation Level Agile Tester syllabus, section 2.2.2, page 171.