Sample Exam Set C Flashcards
Question #1 (1 Point)
Which of the following is a typical test objective?
a) Validating that documented requirements are met
b) Causing failures and identifying defects
c) Initiating errors and identifying root causes
d) Verifying the test object meets user expectations
Select ONE option.
B
a) Is not correct. Validating that documented requirements are met is incorrect as validation is concerned with meeting user requirements and expectations, while verification is concerned with meeting specified requirements, so this would be correct if we replaced ‘validating’ with ‘verifying’
b) Is correct. Causing failures and identifying defects is probably the most common objective of dynamic testing
c) Is not correct. Initiating errors and identifying root causes is incorrect because testers do not initiate errors, they try to cause failures. Errors are typically made by developers (and cannot really be initiated) and result in defects, which testers attempt to identify either directly through static testing or indirectly through failures with dynamic testing. Identifying root causes is useful but is part of debugging, which is a separate activity to testing
d) Is not correct. Verifying the test object meets user expectations is incorrect as verification is concerned with checking specified (documented) requirements are met, while validation is concerned with meeting user requirements and expectations, so this would be correct if we replaced ‘verifying’ with ‘validating’
Question #2 (1 Point)
Which of the following statements BEST describes the difference between testing and debugging?
a) Testing causes failures while debugging fixes failures
b) Testing is a negative activity while debugging is a positive activity
c) Testing determines that defects exist while debugging removes defects
d) Testing finds the cause of defects while debugging fixes the cause of defects
Select ONE option.
C
a) Is not correct. Dynamic testing does cause failures (from which defects can then be located and fixed). However, debugging is concerned with locating defects and fixing these defects. Therefore, debugging does not fix failures
b) Is not correct. Both testing and debugging contribute to improving the quality of the test object, so should really both be considered positively. Debugging is generally considered to be a positive activity as it is fixing something. Dynamic testing does involve intentionally causing the test object to fail, which is why some people consider it a negative activity, but that is a very narrow view (and not one typically held by testers). Both positive and negative test cases are possible. Positive test cases check that the test object correctly performs what it is supposed to do, while negative testing checks that the test object does not do what it is not supposed to do
c) Is correct. Testing determines that defects exist either directly through observation of the defect in reviews (or by a tool in static analysis), or indirectly by causing a failure in dynamic testing. Debugging is a separate activity from testing (normally performed by developers) and is concerned with locating defects (only for dynamic testing) and fixing the defects
d) Is not correct. The causes of defects are typically human errors. Testing finds defects either directly through static testing, or indirectly by causing failures in dynamic testing, and debugging fixes defects. So, testing does not find the cause of defects and debugging does not fix the causes of defects
Question #3 (1 Point)
The ‘absence-of-defects fallacy’ is one of the principles of testing. Which of the following is an example of addressing this principle in practice?
a) Explaining that it is not possible for testing to show the absence of defects
b) Supporting the end users to perform acceptance testing
c) Ensuring that no implementation defects remain in the delivered system
d) Modifying tests that cause no failures to ensure few defects remain
Select ONE option.
B
The ‘absence-of-defects fallacy’ is concerned with the idea that ensuring correctness in accordance with the requirements (i.e., verifying the absence of implementation defects) does not guarantee user satisfaction with the system. To address this it is also necessary to validate that the system meets users’ needs and expectations, fulfills business objectives, and outperforms competing systems.
a) Is not correct. The ‘testing shows the presence, not the absence of defects’ principle explains that while testing can detect the existence of defects in the test object, it is not possible to demonstrate that there are no defects and, therefore, guarantee its correctness. Therefore, explaining that it is not possible for testing to show the absence of defects would partially address this principle, not the ‘absence-of-defects’ fallacy
b) Is correct. By supporting the end user to perform acceptance testing it should be possible to validate that the system meets users’ needs and expectations
c) Is not correct. It is not possible to ensure that no implementation defects remain in the delivered system as the ‘testing shows the presence, not the absence of defects’ principle explains that while testing can detect the existence of defects in the test object, it is not possible to demonstrate that there are no defects and, therefore, guarantee its correctness
d) Is not correct. Modifying tests that cause no failures to ensure few defects remain is one way to address the ‘tests wear out’ principle. This principle is concerned with the idea that repeating identical tests on unaltered code is unlikely to uncover novel defects and therefore, modifying tests may be essential. This will not validate that the system meets users’ needs and expectations
Question #4 (1 Point)
Which of the following test activities are MOST likely to involve the application of boundary value analysis and equivalence partitioning?
a) Test implementation
b) Test design
c) Test execution
d) Test monitoring
e) Test analysis
Select TWO options.
B, E
Given the following description of test analysis:
To identify the features that require testing, the test basis is analyzed and defined as test conditions, which are then prioritized along with related risks. The systematic identification of test conditions as coverage items often involves using test techniques both during test analysis and as part of the test design activity. From the above description, it can be seen that test techniques are often used in the test analysis and test design activities. Boundary value analysis and equivalence partitioning are test techniques.
a) Is not correct. Test implementation is not likely to involve the use of test techniques as it is mostly concerned with assembling test cases into test procedures, while test techniques create test cases
b) Is correct. Test design is likely to involve the use of test techniques to create test cases from test conditions and coverage items
c) Is not correct. Test execution is not likely to involve the use of test techniques as it is mostly concerned with executing test procedures (and so test cases), while test techniques create test cases
d) Is not correct. Test monitoring is not likely to involve the use of test techniques. Test monitoring is mostly concerned with ongoing checks to ensure the plan is being followed, while test techniques create test cases
e) Is correct. Test analysis is likely to involve the use of test techniques to identify test conditions
Question #5 (1 Point)
Given the following testware:
1. Coverage items
2. Change requests
3. Test execution schedule
4. Prioritized test conditions
And the following test activities
A. Test analysis
B. Test design
C. Test implementation
D. Test completion
Which of the following BEST shows the testware produced by the activities?
a) 1B, 2D, 3C, 4A
b) 1B, 2D, 3A, 4C
c) 1D, 2C, 3A, 4B
d) 1D, 2C, 3B, 4A
Select ONE option.
A
Considering each of the listed test activities and their output testware:
A. Test analysis - prioritized test conditions (4) (e.g., acceptance criteria), and defect reports for defects identified in the test basis
B. Test design - prioritized test cases, test charters, coverage items (1), test data requirements, and test environment requirements
C. Test implementation - test procedures, automated test scripts, test suites, test data, test execution schedule (3), and test environment elements such as stubs, drivers, simulators, and service virtualizations
D. Test completion - test completion report, documented lessons learned, action items for improvement, and change requests (2) (as product backlog items)
Thus:
a) Is correct. The correct match is: 1B, 2D, 3C, 4A
b) Is not correct
c) Is not correct
d) Is not correct
Question #6 (1 Point)
Which of the following statements about the different testing roles is MOST likely to be CORRECT?
a) In Agile software development, the test management role is the primary responsibility of the team, while the testing role is primarily the responsibility of a single individual from outside the team
b) The testing role is primarily responsible for test monitoring and control, while the test management role is primarily responsible for test planning and test completion
c) In Agile software development, test management activities that span multiple teams are handled by a test manager outside the team, while some test management tasks are handled by the team itself
d) The test management role is primarily responsible for test analysis and test design, while the testing role is primarily responsible for test implementation and execution
Select ONE option.
C
a) Is not correct. Although it is correct to say that in Agile software development, some of the test management tasks may be handled by the Agile team itself, the testing role is not primarily the responsibility of a single individual from outside the team. Instead the testing is more likely to be performed by various team members following the whole-team approach
b) Is not correct. The test management role primarily involves activities related to test planning, test monitoring and control, and test completion. So, although this statement is partially correct, it is wrong to say that the testing role is primarily responsible for test monitoring and control
c) Is correct. In Agile software development, some of the test management tasks may be handled by the Agile team itself. However, for test activities that span multiple teams within an organization, test managers outside of the development team may perform these tasks
d) Is not correct. The test management role primarily involves activities related to test planning, test monitoring and control, and test completion, while the testing role is primarily responsible for the technical and engineering aspects of testing, such as test analysis, test design, test implementation, and test execution. Thus the test management role is not normally responsible for test analysis and test design, although it is correct to say that the testing role is primarily responsible for test implementation and execution
Question #7 (1 Point)
Which of the following is an advantage of the whole-team approach?
a) Teams with no testers
b) Improved team dynamics
c) Specialist team members
d) Larger team sizes
Select ONE option.
B
a) Is not correct. In the whole-team approach, testers play a vital role by sharing their testing expertise with the team and guiding product development. They collaborate with other team members to achieve the desired quality levels and work with business representatives to create acceptance tests. Testers also partner with developers to determine the optimal test strategy and automation approaches
b) Is correct. By leveraging the diverse skill sets of each team member most effectively, the whole-team approach fosters superior team dynamics, promotes robust communication and collaboration, and generates a synergistic effect that benefits the entire project
c) Is not correct. The whole-team approach allows any team member with the requisite skills and knowledge to undertake any task, thus specialist team members are not an advantage of this approach
d) Is not correct. There is no specific guidance on the optimum size of teams using the whole-team approach, and there is no suggestion that larger teams are better
Question #8 (1 Point)
Which of the following statements about the independence of testing is CORRECT?
a) Independent testers will find defects due to their different technical perspective from developers, but their independence may lead to an adversarial relationship with the developers
b) Developers’ familiarity with their own code means they only find a few defects in it, however their shared software background with testers means these defects would also be found by the testers
c) Independent testing requires testers who are outside the developer’s team and ideally from outside the organization, however these testers find it difficult to understand the application domain
d) Testers from outside the developer’s team are more independent than testers from within the team, but the testers from within the team are more likely to be blamed for delays in product release
Select ONE option.
A
a) Is correct. The primary benefit of independence in testing is that testers are more likely to identify different types of failures and defects compared to developers, due to their varied backgrounds, technical viewpoints, and potential biases, including cognitive bias. However, the main disadvantage of independence in testing is that testers may become isolated from the development team, leading to communication problems, a lack of collaboration, and potentially an adversarial relationship, with testers being blamed for delays and bottlenecks in the release process
b) Is not correct. A developer’s familiarity with the code does not mean that they rarely find defects in it, instead this familiarity means they can efficiently find many defects in their own code. And, rather than developers and testers having a shared background, developers having a different background to testers is normally cited as the reason that testers and developers find different kinds of defects
c) Is not correct. Testing can be conducted at different levels of independence, ranging from no independence for the author to very high independence for testers from outside the organization. In most projects, multiple levels of independence are utilized, with developers performing component and component integration testing, the test team performing system and system integration testing, and business representatives performing acceptance testing. So, testers can be in the developer’s team and do not need to come from outside the organization. Knowledge of the application domain will change from case-to-case and is not dependent on the level of independence
d) Is not correct. Testing can be conducted at different levels of independence, ranging from no independence for the author to very high independence for testers from outside the organization, with testers from outside the developer’s team generally more independent than testers from within the team. However, there is more reason to believe that testers from outside the team are likely to be more isolated from the developers and so are more likely to be blamed for delays in product release
Question #9 (1 Point)
Which of the following is a good testing practice that applies to all software development lifecycles?
a) For each test level, there is a corresponding development level
b) For each test objective, there is a corresponding development objective
c) For every software test activity, there is a corresponding user activity
d) For every software development activity, there is a corresponding test activity
Select ONE option.
D
a) Is not correct. Quality control applies to all development activities, meaning that every software development activity has a corresponding test activity. However, here we are attempting to equate test levels with development levels, and, although we know what is meant by ‘test levels’, there is no common understanding of the term ‘ development level’
b) Is not correct. Every software development activity has a corresponding test activity; however test objectives are quite different. For instance, there might be a test objective of ensuring that a test object adheres to a contractual requirement that a certain type of testing must be performed before delivery. In this case there is no reason for there to be a corresponding development objective
c) Is not correct. Quality control applies to all development activities, meaning that every software development activity has a corresponding test activity. However, the same symmetry does not apply to testing and user activities. For instance, for some systems it is difficult to even identify the end users. Also, some test activities are focused on developers (e.g., testing for ease of maintainability), which has no user aspect to it
d) Is correct. Quality control applies to all development activities, meaning that every software development activity has a corresponding test activity
Question #10 (1 Point)
Which of the following is an example of a test-first approach to development?
a) Component Test-Driven Development
b) Integration Test-Driven Development
c) System Test-Driven Development
d) Acceptance Test-Driven Development
Select ONE option.
D
a) Is not correct. Component Test-Driven Development is not a correct example of a test-first approach to development
b) Is not correct. Integration Test-Driven Development is not a correct example of a test-first approach to development
c) Is not correct. System Test-Driven Development is not a correct example of a test-first approach to development
d) Is correct. Acceptance Test-Driven Development (ATDD) is a well-known example of a test-first approach to development
Question #11 (1 Point)
Which of the following provides the BEST description of the shift-left approach?
a) When agreed by the developers, manual activities on the left-hand side of the test process are automated to support the principle of ‘early testing saves time and money’
b) Where cost-effective, test activities are moved to be performed earlier in the software development lifecycle (SDLC) to reduce the total cost of quality by reducing the number of defects found later in the SDLC
c) When they have spare time available, testers are required to automate tests for regression testing, starting with component tests and component integration tests
d) When available, testers are trained to perform tasks early in the SDLC to allow more test activities to be automated later in the SDLC
Select ONE option.
B
a) Is not correct. Practices involved in shift-left testing are aimed at implementing more testing activities in the early phases of the development life cycle, portraying the SDLC as moving from left to right. There is no such thing as the left-hand side of the test process
b) Is correct. Shift-left emphasizes the importance of starting testing earlier in the software development lifecycle (SDLC). Implementing shift-left testing necessitates additional training, and increased effort and costs during the early stages of the SDLC, nevertheless, overall savings should be higher
c) Is not correct. Although automated component tests and component integration tests for regression testing are generally valuable, the creation of these tests is normally the responsibility of the developers, and if a continuous integration/continuous delivery (CI/CD) approach is followed, then these tests will have been submitted with the code. In some situations the tester may automate tests for regression testing, and sometimes even for component tests and component integration tests, however this is not part of a ‘shift-left’ approach which moves testing earlier in the SDLC
d) Is not correct. Training testers to perform tasks early in the SDLC would support a shift-left approach by emphasizing the importance of starting testing earlier in the SDLC. However, automating more test activities to be performed later in the SDLC is not part of a ‘shift-left’ approach
Question #12 (1 Point)
Which of the following is LEAST likely to occur as a result of a retrospective?
a) The quality of future test objects improves by identifying improvements in development practices
b) Test efficiency improves by speeding up the configuration of test environments through automation
c) End users’ understanding of the development and test processes is improved
d) Automated test scripts are enhanced through feedback from developers
Select ONE option.
C
a) Is not correct. One of the purposes of retrospectives is to identify potential process improvements, which, if put into practice, should result in the quality of future outputs of the development process (test objects) being higher. So, this is likely to occur as a result of a retrospective
b) Is not correct. A benefit of retrospectives for testing includes increased test efficiency through process improvements. So, this is likely to occur as a result of a retrospective
c) Is correct. Participants at retrospectives typically include testers, developers, architects, product owners, and business analysts, but end users are rarely invited or attend these meetings – and they are also unlikely to receive any reports from these meetings. So, it is very unlikely that they will learn and understand more about the development and test processes through retrospectives
d) Is not correct. A benefit of retrospectives for testing includes improved quality of testware (including automated test scripts) through joint reviews with developers. So, this is likely to occur as a result of a retrospective
Question #13 (1 Point)
Which of the following test levels is MOST likely being performed if the testing is focused on validation and is not being performed by testers?
a) Component testing
b) Component integration testing
c) System integration testing
d) Acceptance testing
Select ONE option.
D
a) Is not correct. Component testing (also called unit testing) involves testing individual components in isolation and is mostly verification against a specification, rather than validation against user needs. However, this testing is not normally performed by testers, as developers usually carry out this testing in their development environment
b) Is not correct. Component integration testing involves testing the interfaces and interactions between components and is mostly verification against a specification, rather than validation against user needs. However, this testing is not normally performed by testers, as developers usually carry out this testing
c) Is not correct. System integration testing examines the interfaces with other systems and external services and is mostly verification against a specification, rather than validation against user needs. This type of testing is also most often performed by testers
d) Is correct. Acceptance testing focuses on validating that the system meets the user’s business needs and is ready for deployment. Ideally, this testing is carried out by the end users
Question #14 (1 Point)
The navigation system software has been updated due to it suggesting routes that break traffic laws, such as driving the wrong way down one-way streets. Which of the following BEST describes the testing that will be performed?
a) Only confirmation testing
b) Confirmation testing then regression testing
c) Only regression testing
d) Regression testing then confirmation testing
Select ONE option.
B
a) Is not correct. Confirmation testing to check that the updates have resulted in a correct implementation is necessary, however, it would then be sensible to perform regression testing to ensure that no defects have been introduced or uncovered in unchanged areas of the system
b) Is correct. Confirmation testing will check that the updates have resulted in a correct implementation, and then regression testing will be used to ensure that no defects have been introduced or uncovered in unchanged areas of the system
c) Is not correct. Regression testing should be used to ensure that no defects have been introduced or uncovered in unchanged areas of the system when the update was made, however it is also necessary to perform confirmation testing that will check that the updates have resulted in a correct implementation
d) Is not correct. Confirmation testing will check that the updates have resulted in a correct implementation, and regression testing will be used to ensure that no defects have been introduced or uncovered in unchanged areas of the system. However, when performed (i.e., when an update needs to be tested), confirmation testing precedes regression testing
Question #15 (1 Point)
Given the following example defects:
i. Two different parts of the design specification disagree due to the complexity of the design
ii. A response time is too long and so makes users lose patience
iii. A path in the code cannot be reached during execution
iv. A variable is declared but never subsequently used in the program
v. The amount of memory needed by the program to generate a report is too high
Which of the following BEST identifies example defects that could be found by static testing (rather than dynamic testing)?
a) ii, v
b) iii, v
c) i, ii, iv
d) i, iii, iv
Select ONE option.
D
Considering each of the listed example defects:
i. Two different parts of the design specification disagree due to the complexity of the design – this is an example of a specification defect, which includes inconsistencies, ambiguities, contradictions, omissions, inaccuracies, and duplications, which can most easily be found by static testing
ii. A response time is too long and so makes users lose patience – this is an example of a response time defect, which can only be detected in practice by executing the program and measuring the response time, which can most easily be found by dynamic testing
iii. A path in the code cannot be reached during execution - this is an example of a coding defect, which includes variables with undefined values, undeclared variables, duplicated or unreachable code, and excessive code complexity, which can most easily be found by static testing
iv. A variable is declared but never subsequently used in the program - this is an example of a coding defect, which includes variables with undefined values, undeclared variables, duplicated or unreachable code, and excessive code complexity, which can most easily be found by static testing
v. The amount of memory needed by the program to generate a report is too high – this is an example of a performance defect, which can only be detected in practice by executing the program and measuring the memory used, which can most easily be found by dynamic testing
Thus:
a) Is not correct
b) Is not correct
c) Is not correct
d) Is correct. The correct match for static testing is i, iii, and iv
Question #16 (1 Point)
Which of the following is a benefit of early and frequent stakeholder feedback?
a) Changes to requirements are understood and implemented earlier
b) It ensures business stakeholders understand user requirements
c) It allows product owners to change their requirements as often as they want
d) End users are told which requirements will not be implemented prior to release
Select ONE option.
A
a) Is correct. Obtaining feedback from stakeholders early and often in the software development process can be highly beneficial. It facilitates early communication of potential quality issues, can prevent misunderstandings about requirements, and ensures that any changes in stakeholder requirements are understood and implemented sooner
b) Is not correct. The feedback is from stakeholders, and them providing feedback is unlikely to improve their understanding of their own user requirements
c) Is not correct. Obtaining feedback from stakeholders early and often in the software development process can be highly beneficial. It facilitates early communication of potential quality issues, can prevent misunderstandings about requirements, and ensures that any changes in stakeholder requirements are understood and implemented sooner. However, because changes in requirements can be understood and implemented sooner, it does not mean that unlimited changes to requirements are encouraged
d) Is not correct. The feedback is from stakeholders and does not cover communication to them. Communications to end users could include them being told about which requirements will not be implemented prior to release, but ideally this should not happen at all
Question #17 (1 Point)
Given the following review types:
- Technical review
- Informal review
- Inspection
- Walkthrough
And the following descriptions:
A. Includes objectives such as gaining consensus, generating new ideas, and motivating authors to improve
B. Includes objectives such as educating reviewers, gaining consensus, generating new ideas and detecting potential defects
C. The main objective is detecting potential defects and it requires metrics collection to support process improvement
D. The main objective is detecting potential defects and it generates no formal documented output
Which of the following BEST matches the review types and the descriptions?
a) 1A, 2B, 3C, 4D
b) 1A, 2D, 3C, 4B
c) 1B, 2C, 3D, 4A
d) 1C, 2D, 3A, 4B
Select ONE option.
B
Considering each of the listed review types:
1. Technical review - This type of review is performed by technically qualified reviewers and led by a moderator. The objectives are to gain consensus and make decisions on technical problems while also evaluating quality and building confidence in the work product, generating new ideas, motivating and enabling authors to improve, and detecting anomalies
2. Informal review - The main objective is to detect anomalies. The process is not defined and does not require formal documented output
3. Inspection - This is the most formal review type, and it follows the complete generic review process. The primary objective is to find the most anomalies, and other objectives include evaluating quality and building confidence in the work product, motivating and enabling authors to improve, and collecting metrics that can be used to enhance the software development life cycle (SDLC), including the inspection process. The author cannot act as the review leader or scribe
4. Walkthrough - Led by the author, this type of review serves various objectives such as evaluating quality and building confidence in the work product, educating reviewers, gaining consensus, generating new ideas, motivating and enabling authors to improve, and detecting anomalies. Reviewers might perform an individual review before the walkthrough, but this is not mandatory
A. Includes objectives such as gaining consensus, generating new ideas, and motivating authors to improve
B. Includes objectives such as educating reviewers, gaining consensus, generating new ideas and detecting potential defects
C. The main objective is detecting potential defects and it requires metrics collection to support process improvement
D. The main objective is detecting potential defects and it generates no formal documented output
Thus:
a) Is not correct
b) Is correct.
c) Is not correct
d) Is not correct
Question #18 (1 Point)
Which of the following is a factor that contributes to a successful review?
a) Ensure management participate as reviewers
b) Split large work products into smaller parts
c) Set reviewer evaluation as an objective
d) Plan to cover one document per review
Select ONE option.
B
a) Is not correct. To ensure successful reviews, it’s important to secure management’s support for the review process, however that does not mean that they should participate as reviewers
b) Is correct. To ensure successful reviews, it’s important to break the work product into parts that are small enough to be reviewed in a reasonable timescale to prevent reviewers from losing focus during individual review or review meetings
c) Is not correct. To ensure successful reviews, it’s important to clearly define objectives and measurable exit criteria, without evaluating participants
d) Is not correct. To ensure successful reviews, it’s important to break down the review into smaller chunks to prevent reviewers from losing focus during individual review or review meetings. So you should not plan to cover one document per review
Question #19 (1 Point)
What is the MAIN difference between black-box test techniques and experience-based test techniques?
a) The test object
b) The test level at which the test technique is used
c) The test basis
d) The software development lifecycle (SDLC) in which the test technique can be used
Select ONE option.
C
a) Is not correct. In most cases both black-box test techniques and experience-based test techniques can be used for the same test objects
b) Is not correct. Both black-box test techniques and experience-based test techniques can be used at all test levels
c) Is correct. Black-box test techniques (also known as specification-based techniques) are based on an analysis of the specified behavior of the test object without reference to its internal structure. So, the test basis is usually a specification. Experience-based test techniques effectively use the knowledge and experience of testers for the design and implementation of test cases. This means that the tester, when designing tests, may not use the specification at all
d) Is not correct. Experience-based test techniques can detect defects that may be missed using black-box (and white-box) test techniques. Hence, experience-based test techniques are complementary to black-box test techniques and white-box test techniques and both black-box test techniques and experience-based test techniques can be used in all SDLCs
Question #20 (1 Point)
You are testing a PIN validator, which accepts valid PINs and rejects invalid PINs. A PIN is a sequence of digits. A PIN is valid if it consists of four digits, at least two of which are different. You have identified the following valid equivalence partitions:
Variable: PIN code length
* The partition “length correct” - four-digit PINs
* The partition “length incorrect” - PINs with length other than 4
Variable: Number of different digits
* The partition “number of different digits correct” - PINs with at least two different digits
* The partition “number of different digits incorrect” - PINs with all digits being the same
Which of the following is a MINIMUM set of input test data that covers all identified equivalence partitions?
a) 1, 1111, 1234, 12345, 1
b) 111, 1111, 1112
c) 1, 12345
d) 12345, 1234
Select ONE option.
A
a) Is correct. Value “1” covers “length incorrect” and covers “number of different digits incorrect”, however the system would not validate against this partition when hitting the first incorrect partition. Value “1111” covers “length correct” and “number of different digits incorrect. Value “1234” again covers “length correct” and also “number of different digits correct”
b) Is not correct. These three values achieve full coverage of the equivalence partitions, but full coverage can be achieved with two values
c) Is not correct. These two values only cover “number of different digits
d) Is not correct. These two values does not cover “number of different digits incorrect” equivalence partition
Question #21 (1 Point)
W A developer was asked to implement the following business rule:
INPUT: value (integer number) IF (value ≤ 100 OR value ≥ 200) THEN write “value incorrect” ELSE write “value OK”
You design the test cases using 2-value boundary value analysis.
Which of the following sets of test inputs achieves the greatest coverage?
a) 100, 150, 200, 201
b) 99, 100, 200, 201
c) 98, 99, 100, 101
d) 101, 150, 199, 200
Select ONE option.
D
The equivalence partitions are: {…, 99, 100}, {101, 102, …, 198, 199}, {200, 201, …}.
Thus, there are 4 boundary values, which are: 100, 101, 199 and 200.
In 2-value BVA, for each boundary value there are two coverage items (the boundary value and its closest neighbor belonging to the adjacent partition). As the closest neighbors are also boundary values in the adjacent partition, then there are just four coverage items.
Thus:
a) Is not correct. Only 100 and 200 are valid coverage items for 2-value BVA, so we achieve 50% coverage
b) Is not correct. Only 100 and 200 are valid coverage items for 2-value BVA, so we achieve 50% coverage
c) Is not correct. Only 100 and 101 are valid coverage items for 2-value BVA, so we achieve 50% coverage
d) Is correct. 101, 199 and 200 are valid coverage items for 2-value BVA, so we achieve 75% coverage
Question #22 (1 Point)
You are working on a project to develop a system to analyze driving test results. You have been asked to design test cases based on the following decision table.
What test data will show that there are contradictory rules in the decision table?
a) C1 = T, C2 = T, C3 = F
b) C1 = T, C2 = F, C3 = T
c) C1 = T, C2 = T, C3 = T and C1 = F, C2 = T, C3 = T
d) C1 = F, C2 = F, C3 = F
Select ONE option.
D
a) Is not correct. The combination (T, T, F) does not match any rule. This is an example of omission, not a contradiction
b) Is not correct. The combination (T, F, T) matches only one column, R2, so there is no contradiction
c) Is not correct. Both combinations (T, T, T) and (F, T, T) match only one column, R1, so there is no contradiction
d) Is correct. The combination (F, F, F) matches both R2 and R3, but R2 and R3 have different actions, so this shows a contradiction between R2 and R3.
Question #23 (1 Point)
You are designing test cases based on the following state transition diagram:
What is the MINIMUM number of test cases required to achieve 100% valid transitions coverage?
a) 3
b) 2
c) 5
d) 6
Select ONE option.
A
The following three transitions:
“REQUESTING -> CONFIRMED”
“WAITING LIST -> CONFIRMED”
“WAITING LIST -> END”
cannot appear in the same test case, which suggests that at least three test cases are required. All the other transitions can appear in combination with one or more of these three transitions, so we need a minimum of three test cases. In fact, only three sequences are possible:
TC1: START (Room request) REQUESTING (Available) CONFIRMED (Pay) END
TC2: START (Room request) REQUESTING (Not available) WAITING LIST (Available) CONFIRMED (Pay) END
TC3: START (Room request) REQUESTING (Not available) WAITING LIST (Cancel) END
Thus:
a) Is correct
b) Is not correct
c) Is not correct
d) Is not correct
Question #24 (1 Point)
You want to apply branch testing to the code represented by the following control flow graph.
How many coverage items do you need to test?
a) 2
b) 4
c) 8
d) 7
Select ONE option.
C
In branch testing the coverage items are branches, which are represented by the edges of a control flow graph. There are 8 edges in the control flow graph.
Thus:
a) Is not correct
b) Is not correct
c) Is correct
d) Is not correct