As a Test Analyst you are involved in the early stages of an acceptance test for a Product Data Management system. You are asked to write test designs and test cases based on use cases. An early version of the system is already available. It is expected that many things will change (including the user interface) during implementation of the new version.
The tests will be conducted by end-users with much domain knowledge who have also been involved in the project defining the user requirements (in the format of use cases) and reviewing other documentation.
What Is the BEST option regarding the level of detail and documentation required for test cases in the project?
Answer : B
The level of detail and documentation required for test cases in the project depends on the type of application under test, the standards followed by the organization, and the maturity of the development process. For a web application that is undergoing frequent changes, it is advisable to use high-level test cases that describe the main features and functionalities from a user's perspective, and low-level test cases that provide more details and specifications for each feature. High-level test cases can be supported by low-level test cases to ensure traceability between the requirements and the test scenarios, as well as to facilitate future changes or enhancements. Low-level test cases can also be reviewed and updated by the end-users who have extensive domain knowledge and are involved in the project.Reference=
ISTQB Certified Tester Advanced Level Overview of Syllabi1, page 10
ISTQB Certified Tester Advanced Level Syllabus Technical Test Analyst2, page 2
Test Documentation in Software Testing (Example)3, section ''Best practice to Achieve Test Documentation''
You are testing software that will be used on mobile devices by senior citizens to help them sign up for activities in a retirement home. The interface is modern with moving graphics and few
words. There is no help included with the application. Given this information, what type of testing is needed to ensure the application is suitable for use?
Answer : D
The correct answer is D. Functional appropriateness.
Functional appropriateness
Functional appropriateness is the type of testing that ensures the application is suitable for the intended purpose and the user's needs. It evaluates the relevance, usefulness, and user-friendliness of the application's functions and features. In this case, the application should be tested for its suitability for senior citizens, who may have different preferences, expectations, and abilities than younger users. The interface should be easy to understand, navigate, and operate, and the application should provide adequate help and feedback to the users1.
Reference =
ISTQB Certified Tester Advanced Level Syllabus Test Analyst2, Section 3.2.2 Functionality
ISTQB Test Analyst Syllabus and Study Guide3, Section 3.2.2 Functionality
Usability Is Ageless: Conducting Usability Tests with Older Adults4, Section 1.1 Conceptualizing and Assessing Usability
You are testing the processing of a critical traffic control system to which various regulations apply The processing of the input variables is dependent
on defined ranges within which the actual retrieved data values can lie.
Which of the following black-box test techniques should you use to test the processing functionality of this system?
Answer : C
Equivalence partitioning is a black-box test technique that divides the input domain of a system into partitions of equivalent data. Boundary value analysis is a technique that tests the boundaries of these partitions, where errors are more likely to occur. These techniques are suitable for testing the processing functionality of a critical traffic control system, as they can ensure that the system handles the input variables within the defined ranges and detects any invalid or out-of-range values.Reference=Black Box Testing Techniques: A Comprehensive Guide(Section 5.1 and 5.2),ISTQB Certified Tester Advanced Level Syllabus Technical Test Analyst(Section 3.2.1 and 3.2.2)
You've created a checklist for an upcoming requirements/use case review. You have included validating the testability of each requirement, and establishing acceptance criteria for each requirement.
You've ensured that each requirement and use case has a unique identifier that complies with company policy. What else should you add to the checklist?
Answer : D
The correct answer is D. Traceability documentation.
Traceability documentation
Traceability documentation is a way of linking the requirements and use cases to the test cases, test results, and other artifacts that are related to them. It helps to ensure the completeness, consistency, and coverage of the testing process, as well as to facilitate the impact analysis, change management, and defect tracking. Traceability documentation should be added to the checklist for the requirements/use case review, as it is an important part of the test analyst's role and responsibilities1.
Reference =
ISTQB Certified Tester Advanced Level Syllabus Test Analyst2, Section 2.1.1 Test Analyst Tasks in the Test Process
ISTQB Test Analyst Syllabus and Study Guide3, Section 2.1.1 Test Analyst Tasks in the Test Process
Requirements Traceability Matrix (RTM) - A Complete Guide4, Section 1. What is Requirements Traceability Matrix?
During testing of a mobile banking application, traceability matrices are defined and maintained between test cases and user stories. This task is supported by a test management tool. Testing is expected to report on the coverage level of the implemented and tested user stories. Which of the following test types is most likely being performed?
Answer : C
Functional completeness testing is a type of testing that verifies that all the user stories or requirements are implemented and tested according to the acceptance criteria. Traceability matrices are used to track the relationship between test cases and user stories, and to measure the test coverage of the user stories. Functional completeness testing is different from functional correctness testing, which checks if the system behaves correctly according to the specifications; functional appropriateness testing, which checks if the system provides functions that meet the user needs and expectations; and interoperability testing, which checks if the system can interact with other systems or components.Reference=ISTQB Certified Tester Advanced Level Syllabus Test Analyst, Section 1.1.1, Testing Process Tasks1;ISTQB Glossary, Terms: Functional Completeness Testing, Functional Correctness Testing, Functional Appropriateness Testing, Interoperability Testing2
You have been given a user story for an ATM application and have been reviewing it. The following are two of the acceptance criteria:
AC 1: The account balance must be displayed to the user as fast as possible to ensure they do not leave during the transaction.
AC 2: The user must log in easily before they can display their balance
From the information provided here and by applying the review checklist in the syllabus, what is the major problem with the acceptance criteria?
Answer : B
The correct answer is B. The acceptance criteria are not testable.
The acceptance criteria are not testable
The acceptance criteria are not testable because they are vague and subjective. They do not specify any measurable or observable outcomes or conditions that can be verified by the test analyst. For example, what does ''as fast as possible'' or ''easily'' mean in terms of performance and usability? How can the test analyst determine if the user does not leave during the transaction or if they log in easily? The acceptance criteria should be rewritten to include clear and quantifiable criteria, such as response time, error rate, user satisfaction, etc1.
Reference =
ISTQB Certified Tester Advanced Level Syllabus Test Analyst2, Section 2.1.1 Test Analyst Tasks in the Test Process
ISTQB Test Analyst Syllabus and Study Guide3, Section 2.1.1 Test Analyst Tasks in the Test Process
What is User Story and Acceptance Criteria (Examples)4, Section 2. What is Acceptance Criteria?
You have been given a test charter to conduct exploratory testing for accepting credit and debit cards for an e-commerce system. You started with the credit cards and you have found that, valid or
invalid, they are never accepted. You have logged this as a defect. What should you do now?
Answer : D
The correct answer is D) Automate the testing for the credit card exploratory tests so they can be used for confirmation testing after the defect is fixed.
A) Enter your exploratory test cases with detailed test steps into the Test Management System
This is incorrect because entering the test cases into the Test Management System is not enough to document and track the exploratory testing process. The test cases should also include the expected results, actual results, and defects found during the testing. Moreover, the test cases should be organized into a clear and logical structure that reflects the test charter and scope.
B) Close the session and start a new session with a new charter
This is incorrect because closing and starting a new session with a new charter would mean losing all the information and data collected during the previous session. This would make it difficult to resume and continue the testing process from where it left off. Instead, it would be better to use a consistent and stable session with a single charter that covers all the requirements and features of the system.
C) Continue the session and conduct the testing for debit cards
This is incorrect because continuing the session and conducting only one type of card (debit) would not provide a comprehensive coverage of all possible scenarios and outcomes of accepting credit cards. It would also limit the scope of testing to only one aspect of payment processing, which may not reflect all the business rules, validations, exceptions, or integrations involved in this domain.
D) Automate the testing for the credit card exploratory tests so they can be used for confirmation testing after the defect is fixed
This is correct because automating some or all of the exploratory tests can help to save time, effort, and resources by reducing manual effort and increasing efficiency. It can also help to improve accuracy, consistency, and reliability by eliminating human errors and biases. Moreover, automating some or all of the exploratory tests can enable them to be reused for confirmation testing after fixing any defects found during exploratory testing. Confirmation testing is a type of functional testing that verifies that all requirements are met by performing regression tests on previously tested functionality1.