ExamGecko
Home Home / ISTQB / CTFL-2018

ISTQB CTFL-2018 Practice Test - Questions Answers, Page 23

Question list
Search
Search

Related questions











How are statement testing and decision testing techniques similar?

A.
Both are specification-based testing techniques
A.
Both are specification-based testing techniques
Answers
B.
Both are experience-based testing techniques
B.
Both are experience-based testing techniques
Answers
C.
Both are structure-based testing techniques
C.
Both are structure-based testing techniques
Answers
D.
Both are black box test design techniques
D.
Both are black box test design techniques
Answers
Suggested answer: C

Explanation:

Statement testing and decision testing techniques are similar because both are structure-based testing techniques. Structure-based testing techniques, also known as white-box testing or code-based testing, are based on analyzing the internal structure and logic of the software code.Structure-based testing techniques aim to achieve a certain level of coverage of the code elements, such as statements, branches, paths, conditions, etc1explains structure-based testing techniques as follows:

Structure-based testing techniques (also known as white-box testing techniques or code-based testing techniques) use the information of the internal structure of the component or system to derive test cases. They are commonly used at component testing and component integration testing levels, but can also be used at system and acceptance levels.

The main advantage of structure-based testing techniques is that they can reveal defects that are not easily found by other techniques, such as logic errors, incorrect assumptions, or incomplete paths. The main disadvantage of structure-based testing techniques is that they require access to the source code, which may not be available or feasible in some situations.

Statement testing is a structure-based testing technique that aims to cover all the executable statements in the code at least once. Decision testing is a structure-based testing technique that aims to cover all the possible outcomes of each decision in the code (true and false) at least once.

A, B, and D are incorrect answers. Specification-based testing techniques, experience-based testing techniques, and black box test design techniques are not similar to statement testing and decision testing techniques. Specification-based testing techniques are based on the requirements and functionality of the software rather than its structure and logic. Experience-based testing techniques are based on the knowledge and intuition of the testers rather than any formal analysis or criteria. Black box test design techniques are based on the external behavior and output of the software rather than its internal structure and logic.

Which of the following statements about Use Case Testing is FALSE?

A.
Use case generally has a mainstream scenario and may have many alternate or exceptional scenarios.
A.
Use case generally has a mainstream scenario and may have many alternate or exceptional scenarios.
Answers
B.
A use case can be defined at the abstract level, detached from the implementation, or at the system level, describing a set of executed functions
B.
A use case can be defined at the abstract level, detached from the implementation, or at the system level, describing a set of executed functions
Answers
C.
Use case testing does not find defects caused by interaction of different components
C.
Use case testing does not find defects caused by interaction of different components
Answers
D.
Each use case has preconditions which need to be met for the use case to work successfully
D.
Each use case has preconditions which need to be met for the use case to work successfully
Answers
Suggested answer: C

Explanation:

Use case testing does not find defects caused by interaction of different components is the statement that is false about use case testing. Use case testing is a technique to create test cases based on use cases, which are descriptions of how a system interacts with one or more actors (users or other systems) to achieve a specific goal or function.Use case testing can find defects caused by interaction of different components, as use cases often involve multiple components working together to provide a service or functionality to an actor2explains use case testing as follows:

Use case testing is a technique that helps us identify test cases that exercise the whole system on a transaction by transaction basis from start to finish. It is a functional black box testing technique.

Use cases are prepared by analysts and domain experts who document the functional requirements of a system from an end-user perspective. Each use case typically has a mainstream scenario and may have alternate or exceptional scenarios that describe different paths or outcomes.

Use case testing can help to verify that all the interactions between actors and the system under test work as expected and meet the user requirements. It can also help to detect integration defects between different components or subsystems.

A, B, and D are correct statements about use case testing. Use case generally has a mainstream scenario and may have many alternate or exceptional scenarios (A), as use cases describe different paths or outcomes depending on various conditions or events. A use case can be defined at different levels of abstraction, such as user goal level, summary level, subfunction level, etc., but not at the abstract level detached from the implementation or at the system level describing a set of executed functions (B), as use cases always describe interactions between actors and systems rather than abstract concepts or functions. Each use case has preconditions which need to be met for the use case to work successfully (D), as preconditions specify what must be true before a use case can begin.

Which of the following is NOT a typical task for a test leader?

A.
Select the test approach
A.
Select the test approach
Answers
B.
Coordinate the test strategy
B.
Coordinate the test strategy
Answers
C.
Prepare and acquire test data
C.
Prepare and acquire test data
Answers
D.
Estimate the cost of testing
D.
Estimate the cost of testing
Answers
Suggested answer: D

Explanation:

Estimating the cost of testing is not a typical task for a test leader. Estimating the cost of testing is usually done by project managers or senior managers who have access to budgetary information and authority to allocate resources for testing activities.Test leaders may provide input or feedback on estimating the cost of testing, but they are not responsible for it3states this as follows:

Estimating costs for test activities within a project is typically done by project managers who have overall responsibility for budgeting and resource allocation within a project. Test leaders may assist project managers in estimating costs for test activities by providing information on test effort, test environment, test tools, etc., but they do not have final authority or accountability for cost estimation.

A, B, and C are incorrect answers. Selecting the test approach (A), coordinating the test strategy (B), and preparing and acquiring test data are typical tasks for a test leader. Selecting the test approach is part of test planning and control, which involves defining the test objectives, scope, strategy, resources, schedule, risks, metrics, etc. Coordinating the test strategy is part of test monitoring and control, which involves measuring and evaluating test progress and quality against objectives and criteria. Preparing and acquiring test data is part of test implementation and execution, which involves developing and prioritizing test cases, creating test data and writing test procedures, checking test environment has been set up correctly, executing test cases, etc.

Consider a document containing a classification of all the defects found during the system test phase and after the delivery in the production environment This document can be considered a test basis for which of the following test design techniques?

A.
Structure-based testing
A.
Structure-based testing
Answers
B.
Experience-based testing
B.
Experience-based testing
Answers
C.
Decision coverage testing
C.
Decision coverage testing
Answers
D.
Specification-based testing
D.
Specification-based testing
Answers
Suggested answer: B

Explanation:

Experience-based testing is the test design technique for which a document containing a classification of all the defects found during the system test phase and after the delivery in the production environment can be considered a test basis. Experience-based testing is a technique that relies on the knowledge and intuition of the testers to design and execute test cases based on their experience with similar systems, technologies, domains, or defects.A document containing a classification of all the defects found during the system test phase and after the delivery in the production environment can provide valuable information and insights for testers to identify potential defect-prone areas or scenarios and focus their testing efforts accordingly1explains experience-based testing as follows:

Experience-based testing techniques are based on the tester's experience, knowledge and intuition. These techniques leverage the tester's skill in finding defects and designing tests that are effective in exposing failures. Experience-based testing techniques are often used when there is no or insufficient documentation available for the system under test, or when there is not enough time to apply more formal techniques.

Some examples of experience-based testing techniques are:

Error guessing: The tester uses their personal experience or intuition to guess what functionality might fail or cause errors, and designs test cases accordingly.

Exploratory testing: The tester simultaneously learns about the system, designs test cases, executes tests, and reports results, using an iterative and interactive approach.

Checklist-based testing: The tester uses a list of items or tasks that need to be verified or completed during testing, based on previous experience or best practices.

A, C, and D are incorrect answers. Structure-based testing, decision coverage testing, and specification-based testing are not test design techniques for which a document containing a classification of all the defects found during the system test phase and after the delivery in the production environment can be considered a test basis. Structure-based testing is a technique that uses the information of the internal structure of the component or system to derive test cases. Decision coverage testing is a type of structure-based testing that aims to cover all the possible outcomes of each decision in the code (true and false) at least once. Specification-based testing is a technique that uses the requirements and functionality of the system to derive test cases. These techniques require access to the source code or documentation of the system under test, which are not provided by a document containing a classification of all the defects found during the system test phase and after the delivery in the production environment.

A program got 100% decision coverage in a test. Which of the following statements is then guaranteed to be true?

A.
Every output equivalence class has been tested.
A.
Every output equivalence class has been tested.
Answers
B.
Every input equivalence class has been tested.
B.
Every input equivalence class has been tested.
Answers
C.
The 'dead' code has not been covered.
C.
The 'dead' code has not been covered.
Answers
D.
Every executable statement is covered
D.
Every executable statement is covered
Answers
Suggested answer: D

Explanation:

Every executable statement is covered is the statement that is guaranteed to be true if a program got 100% decision coverage in a test. Decision coverage is a structure-based testing technique that measures how many decision outcomes have been exercised by a set of test cases. A decision is a control structure that has two or more possible outcomes (e.g., if-then-else, switch-case, etc.). Decision coverage requires that each decision outcome is executed at least once by a test case. If a program got 100% decision coverage in a test, it means that every possible outcome of every decision in the code has been covered by at least one test case.This also implies that every executable statement in the code has been covered by at least one test case, since every statement belongs to some decision outcome2explains decision coverage as follows:

Decision Coverage (also known as Branch Coverage) is a white box testing technique which measures how many decision outcomes have been tested by a set of test cases.

A decision is any control structure where there are two or more possible paths through it (e.g., if-then-else statements, switch-case statements, etc.). Each path through such control structures represents an outcome.

Decision Coverage requires that each outcome from each decision point be executed at least once by one or more test cases.

Decision Coverage can be calculated as follows:

Decision Coverage = (Number of Decision Outcomes Executed / Total Number of Decision Outcomes) * 100%

If Decision Coverage is 100%, it means that every possible outcome from every decision point has been tested by at least one test case. This also means that every executable statement has been tested by at least one test case.

A, B, and C are incorrect answers. Every output equivalence class has been tested (A), every input equivalence class has been tested (B), and the ''dead'' code has not been covered are statements that are not guaranteed to be true if a program got 100% decision coverage in a test. Equivalence classes are groups of inputs or outputs that are expected to produce similar results or behavior from the system under test. Equivalence partitioning is a specification-based testing technique that uses equivalence classes to design test cases. Decision coverage is a structure-based testing technique that does not consider equivalence classes, but only the outcomes of the decisions in the code. Therefore, achieving 100% decision coverage does not ensure that every output or input equivalence class has been tested. Dead code is code that can never be executed, regardless of the input values or conditions. Dead code can be caused by logic errors, redundant statements, unreachable branches, etc. Decision coverage does not detect or cover dead code, since it only considers the outcomes of the decisions that can be executed. Therefore, achieving 100% decision coverage does not imply that the dead code has not been covered.

Which test design technique can be used for effectively testing system requirements consisting of logical conditions?

A.
Boundary value analysis
A.
Boundary value analysis
Answers
B.
Use case testing
B.
Use case testing
Answers
C.
Equivalence partitioning
C.
Equivalence partitioning
Answers
D.
Decision table testing
D.
Decision table testing
Answers
Suggested answer:

Explanation:

Explanation of Correct Answer: Decision table testing is a test design technique that

Which of the following is a correct statement about informal reviews?

A.
The usefulness of an informal review is highly variable and strongly dependent on the reviewers
A.
The usefulness of an informal review is highly variable and strongly dependent on the reviewers
Answers
B.
Informal review must be done by the author of the reviewed material, before it is submitted for formal review
B.
Informal review must be done by the author of the reviewed material, before it is submitted for formal review
Answers
C.
The moderator of an informal review should not be the author of the reviewed material
C.
The moderator of an informal review should not be the author of the reviewed material
Answers
D.
An informal review has no impact on the quality of the product, just on the level of knowledge of the reviewers while Structural tests can be performed at Unit test level
D.
An informal review has no impact on the quality of the product, just on the level of knowledge of the reviewers while Structural tests can be performed at Unit test level
Answers
Suggested answer: A

Explanation:

According to the ISTQB Certified Tester Foundation Level Syllabus Version 2018, an informal review is a type of static testing technique that does not follow a defined process and has no formal or minimal entry and exit criteria. The usefulness of an informal review is highly variable and strongly dependent on the reviewers, who may be chosen arbitrarily. Informal reviews are often performed as part of the development process, before the work product is submitted for formal review. The moderator of an informal review may or may not be the author of the reviewed material. An informal review can have a positive impact on the quality of the product, as well as on the level of knowledge of the reviewers.

Which of the following sentences is correct?

A.
Functional and Structural tests can be performed at all test levels
A.
Functional and Structural tests can be performed at all test levels
Answers
B.
Functional tests can be performed at Unit and Integration test levels, while Structural tests can be performed at System test level
B.
Functional tests can be performed at Unit and Integration test levels, while Structural tests can be performed at System test level
Answers
C.
Functional and Structural test levels can be performed for all test types
C.
Functional and Structural test levels can be performed for all test types
Answers
D.
Functional tests can be performed at Integration and System test levels, while Structural tests can be performed at Unit test level
D.
Functional tests can be performed at Integration and System test levels, while Structural tests can be performed at Unit test level
Answers
Suggested answer: A

Explanation:

Functional and Structural tests are two different test design techniques, not test levels or test types. They can be applied at any test level (Unit, Integration, System, Acceptance) and for any test type (Functional, Non-functional, Regression, Maintenance). Therefore, option A is the correct answer. Option B is incorrect because Functional tests can be performed at any test level, not just Unit and Integration. Option C is incorrect because Functional and Structural are not test levels, but test design techniques. Option D is incorrect because Structural tests can be performed at any test level, not just Unit.

A 'functional test' is...

A.
... a test focused on the efficiency of the system
A.
... a test focused on the efficiency of the system
Answers
B.
... a dynamic test for which the tests are based on the specification of the test object.
B.
... a dynamic test for which the tests are based on the specification of the test object.
Answers
C.
... a static comparison of test and requirements specification of a test object
C.
... a static comparison of test and requirements specification of a test object
Answers
D.
... a test for which the test cases and test data are based on the structure of the test object
D.
... a test for which the test cases and test data are based on the structure of the test object
Answers
Suggested answer: B

Explanation:

A functional test is a dynamic test for which the tests are based on the specification of the test object. This means that the test cases and test data are derived from the functional requirements, use cases, user stories, or other sources that describe the expected behavior and functionality of the system under test. A functional test is not focused on the efficiency of the system (that would be a performance test), nor is it a static comparison of test and requirements specification (that would be a review or inspection), nor is it based on the structure of the test object (that would be a structural test).

Certified Tester Foundation Level Syllabus - ISTQB Guru1, page 10

Certified Tester Foundation Level (CTFL) Syllabus - ASTQB2, page 65

A Study Guide to the ISTQB Foundation Level 2018 Syllabus - Springer3, page 77

Which two of the following statements are true?

A: Software testing can be necessary to fulfill legal or contractual obligations.

B: Software testing is done to essentially increase the quality of developers.

C: Intensive testing can help reduce risks and problems during operation

D: Intensive testing is used to prove correctness.

A.
C and D are true. A and B are wrong.
A.
C and D are true. A and B are wrong.
Answers
B.
A and C are true. B and D are wrong
B.
A and C are true. B and D are wrong
Answers
C.
B and D are true. A and C are wrong
C.
B and D are true. A and C are wrong
Answers
D.
B and C are true, A and D are wrong
D.
B and C are true, A and D are wrong
Answers
Suggested answer: B

Explanation:

Software testing can be necessary to fulfill legal or contractual obligations, such as safety standards or compliance requirements. This is stated in the syllabus under section 1.1, 'Why is Testing Necessary?'1. Intensive testing can help reduce risks and problems during operation by finding defects early and preventing failures. This is stated in the syllabus under section 1.2, 'What is Testing?'1. Software testing is not done to increase the quality of developers, nor is it used to prove correctness. These are common misconceptions about testing that are refuted in the syllabus under section 1.3, 'Seven Testing Principles'1.

Total 365 questions
Go to page: of 37