Fundamentals of Testing Flashcards

Software testing evaluates functionality, distinguishes it from debugging, ensures quality, and clarifies roles and principles, emphasizing the importance of thorough testing practices and the necessary skills for effective implementation.

1
Q

Which of the following statements describe a valid test objective?

a) To prove that there are no unfixed defects in the system under test

b) To prove that there will be no failures after the implementation of the system into production

c) To reduce the risk level of the test object and to build confidence in the quality level

d) To verify that there are no untested combinations of inputs

Select ONE option.

A

**a) Is not correct. **It is impossible to prove that there are no defects anymore in the system under test. See testing principle 1

b) Is not correct. See testing principle 7

c) Is correct. Testing finds defects and failures which reduces the
level of risk and at the same time gives more confidence in the quality level of the test object

d) Is not correct. It is impossible to test all combinations of inputs (see testing principle 2)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Which of the following options shows an example of test activities that contribute to success?

a) Having testers involved during various software development lifecycle (SDLC) activities will help to detect defects in work products

b) Testers try not to disturb the developers while coding, so that the developers write better code

c) Testers collaborating with end users help to improve the quality of defect reports during component integration and system testing

d) Certified testers will design much better test cases than non-certified testers

Select ONE option.

A

a) Is correct. It is important that testers are involved from the beginning of the software development lifecycle (SDLC). It will increase understanding of design decisions and will detect defects early.

**b) Is not correct. **Both developers and testers will have more understanding of each other’s work products and how to test the code

c) Is not correct. End users will not help the testers in increasing the quality of defect reports; also, users usually do not participate in low-level testing levels like integration testing

d) Is not correct. Being certified does not automatically mean that the tester will be better in test design

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

You have been assigned as a tester to a team producing a new system incrementally. You have noticed that no changes have been made to the existing regression test cases for several iterations and no new regression defects were identified. Your manager is happy, but you are not. Which testing principle explains your skepticism?

a) Tests wear out
b) Absence-of-errors fallacy
c) Defects cluster together
d) Exhaustive testing is impossible

Select ONE option.

A

a) Is correct. This principle means that if the same tests are repeated over and over again, eventually these tests no longer find any new defects. This is probably why the tests all passed in this release as well

b) Is not correct. This principle says about the mistaken belief that just finding and fixing a large number of defects will ensure the success of a system

c) Is not correct. This principle says that a small number of components usually contain most of the defects

d) Is not correct. This principle states that testing all combinations
of inputs and preconditions is not feasible

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

You work in a team that develops a mobile application for food ordering. In the current iteration the team decided to implement the payment functionality.

Which of the following activities is a part of test analysis?

a) Estimating that testing the integration with the payment service will take 8 person-days

b) Deciding that the team should test if it is possible to properly share payment between many users

c) Using boundary value analysis (BVA) to derive the test data for the test cases that check the correct payment processing for the minimum allowed amount to be paid

d) Analyzing the discrepancy between the actual result and expected result after executing a test case that checks the process of payment with a credit card, and reporting a defect

Select ONE option.

A

a) Is not correct. Estimating the test effort is part of test planning

b) Is correct. This is an example of defining test conditions which is a part of test analysis

c) Is not correct. Using test techniques to derive coverage items is a part of test design

d) Is not correct. Reporting defects found during dynamic testing is a part of test execution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Which of the following factors (i-v) have SIGNIFICANT influence on the test process?

i. The SDLC
ii. The number of defects detected in previous projects
iii. The identified product risks
iv. New regulatory requirements forcing formal white-box testing
v. The test environment setup

a) i, ii have significant influence
b) i, iii, iv have significant influence
c) ii, iv, v have significant influence
d) iii, v have significant influence

Select ONE option.

A

i. Is true. The SDLC has an influence on the test process

ii. Is false. The number of defects detected in previous projects may have some influence, but this is not as significant as i, iii and iv

iii. Is true. The identified product risks are one of the most important factors influencing the test process

iv. Is true. Regulatory requirements are important factors influencing the test process

v. Is false. The test environment has no significant influence on the test process

Thus:
a) Is not correct
b) Is correct
c) Is not correct
d) Is not correct

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Which TWO of the following tasks belong MAINLY to a testing role?

a) Configure test environments
b) Maintain the product backlog
c) Design solutions to new requirements
d) Create the test plan
e) Report on achieved coverage

Select TWO options.

A

a) Is correct. This is done by the testers

b) Is not correct. The product backlog is built and maintained by the product owner

**c) Is not correct. **This is done by the development team

d) Is not correct. This is a managerial role

e) Is correct. This is done by the testers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Which of the following skills (i-v) are the MOST important skills of a tester?

i. Having domain knowledge
ii. Creating a product vision
iii. Being a good team player
iv. Planning and organizing the work of the team
v. Critical thinking

a) ii and iv are important
b) i, iii and v are important
c) i, ii and v are important
d) iii and iv are important

Select ONE option.

A

i. Is true. Having domain knowledge is an important tester skill

ii. Is false. This is a task of the business analyst together with the business representative

iii. Is true. Being a good team player is an important skill

iv. Is false. Planning and organizing the work of the team is a task
of the test manager or, mostly in an Agile software development project, the whole team and not just the tester

v. Is true. Critical thinking is one of the most important skills of testers

Thus:
a) Is not correct
b) Is correct
c) Is not correct
d) Is not correct

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How is the whole team approach present in the interactions between testers and business representatives?

a) Business representatives decide on test automation approaches

b) Testers help business representatives to define test strategy
c) Business representatives are not part of the whole team approach

d) Testers help business representatives to create suitable acceptance tests

Select ONE option.

A

a) Is not correct. The test automation approach is defined by testers with the help of developers and business representatives

b) Is not correct. The test strategy is decided in collaboration with the developers

c) Is not correct. Testers, developers, and business representatives are part of the whole team approach

d) Is correct. Testers will work closely with business representatives to ensure that the desired quality levels are achieved. This includes supporting and collaborating with them to help them create suitable acceptance tests

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Which of the following is an example of why testing is necessary?

a) Dynamic testing increases quality by causing test objects to fail in ways that could never be achieved by the users

b) Static testing is used by developers to identify failures in their program code earlier than can be achieved through dynamic testing

c) Static analysis provides evidence to customers that the elements of the system that provide no outputs are fit for release

d) Reviews increase the quality of requirements specifications and lead to fewer changes being needed in derived work products

Select ONE option.

A

a) Is not correct. It is often possible to use dynamic testing to cause a test object to fail in ways that could never be achieved by the users, such as by using fault injection. However, if the failure can never occur with real end users, then identifying it is not especially valuable as testing is ultimately aimed at improving the work product for the end users. Spending time testing for failures that cannot occur with real users is not an efficient use of a tester’s time

b) Is not correct. Static testing in the form of static analysis is used by developers to identify defects in their program code earlier than can be achieved through dynamic testing. Note, however, that static testing (and static analysis) is used to detect defects, not failures, which are found by dynamic testing. Thus it is the use of the term ‘failures’ that makes this an incorrect option

**c) Is not correct. **Static analysis directly detects anomalies in code, which may be defects, and this is normally for the developer, not the customer. The provision of evidence for release by the use of static analysis of elements that provide no output is nonsense

d) Is correct. Reviews are a form of static testing that can be
applied from the very start of the software development lifecycle and are used to find defects that can be removed before subsequent development activities waste effort on faulty requirements. If the defects are not detected and removed early on, then when the defect is found derived work products, such as the design and code, will need to be changed as they were based on faulty requirements

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Which of the following statements about quality assurance (QA) and/or quality control (QC) is correct?

a) QA is performed as part of testing

b) Testing is performed as part of QC

c) Testing is another term for QC

d) Testing is performed as part of QA

Select ONE option.

A

a) Is not correct. QA concentrates on process improvement and implementation, using a preventive approach to avoid errors and defects, while testing is a form of QC that is used to detect defects

**b) Is correct. ** QC aims to achieve appropriate levels of quality by focusing on identifying and correcting product defects. Testing is a significant part of QC and helps to uncover these defects

c) Is not correct. Although testing is a significant part of QC and helps to uncover defects, other (non-testing) techniques utilized in QC include formal methods like model checking and proof of correctness, as well as simulation and prototyping

d) Is not correct. QA concentrates on process improvement and implementation, using a preventive approach to avoid errors and defects, while testing is a form of QC that is used to detect defects

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

One of the ‘principles of testing’ states that exhaustive testing is impossible. Which of the following is an example of addressing this principle in practice?

a) Creating test cases that cover every possible specified output

b) Documenting all possible test input variations and prioritizing
these based on importance

c) Starting testing as early as possible with reviews and other static testing approaches

d) Using equivalence partitioning and boundary value analysis to generate test cases

Select ONE option.

A

The ‘exhaustive testing is impossible’ principle is concerned with the fact that it is not feasible to test every possible variation of test inputs in all different circumstances, except in trivial cases. Instead, testing utilizes test techniques, test case prioritization, and risk-based testing to sample from the set of possibilities and focus testing efforts.

a) Is not correct. The principle states that it is not feasible to test everything except in trivial cases. Testing everything would require testing every possible variation of test inputs in all different circumstances, which is generally infeasible as there will be a practically infinite number. Testing every possible specified output will not address this problem as the relationship between inputs and specified outputs can be different for each test object. Sometimes there may be a practically infinite number of possible specified outputs (e.g., when there are several variables representing real numbers), whereas at other times there may be just two specified outputs, such as with a single variable that can be either true or false

b) Is not correct. The principle states that it is not feasible to test every possible variation of test inputs in all different circumstances. This is because for non-trivial systems there is a practically infinite number. Therefore, in practice, documenting all possible test input variations would be impractical as it would take an infinite length of time

c) Is not correct. Starting testing as early as possible with reviews and other static testing approaches will not address the problem of there being too many possible test cases. The ‘early testing saves time and money’ principle is concerned with fixing defects early on to prevent the occurrence of subsequent defects in derived work products, thereby reducing costs and the likelihood of failures

d) Is correct. The use of equivalence partitioning and boundary value analysis to generate test cases is one way to address the principle as these test techniques provide a systematic way to derive a finite subset of all possible test cases

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Which of the following is MOST likely to impact how testing is performed for a given test object?

a) The average level of experience of the organization’s marketing team

b) The knowledge of users that a new system is being developed for them

c) The number of years’ experience of the members of the test team

d) The end user’s organizational structure for a commercial music streaming application

Select ONE option.

A

**a) Is not correct. **The organization’s marketing team is unlikely to perform much testing (although in some organizations they may be involved with acceptance testing), so their average level of experience (most of which would be in marketing) is not likely to impact how testing is performed for a given test object

b) Is not correct. The level of knowledge of users that a new system is being built for them is unlikely to affect how testing is performed. Any user involvement that could affect how testing is performed is more likely to be as a result of decisions made by the testers, customer and project manager

c) Is correct. The number of years’ experience of the members of the performance testing team will help to determine the capabilities and knowledge (e.g., of different tools and defect types) that the team members will apply when they are testing

d) Is not correct. The organizational structure of the different end users (who may be varied) will change between users. So, it may not even be known when the application is being tested, and the end user’s organizational structure can thus have little effect on how the testing is performed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Which test activity involves working with test data requirements, test conditions, test environment requirements and test cases?

a) Test design
b) Test execution
c) Test analysis
d) Test implementation

Select ONE option.

A

a) Is correct. Test design involves using test conditions to create test cases and other necessary testware, such as test data requirements and test charters for exploratory testing. Test environment requirements are also specified, including the necessary infrastructure and tools

**b) Is not correct. **Test execution involves executing test cases (as part of test procedures), however it does not directly cover the other testware mentioned in the question, such as test data requirements, test environment requirements and test conditions

c) Is not correct. Test analysis is used 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. While this activity involves working with test conditions, it does not cover the other testware mentioned in the question, such as test data requirements, test environment requirements and test cases

d) Is not correct. Test implementation includes the generation of test procedures, such as manual and automated test scripts, which are created from test cases and may be assembled into test suites. Test procedures are prioritized and arranged in a test execution schedule. Test data is created, and the test environment built, and its set up verified. While this activity involves explicitly working with test cases, and may use test data requirements and test environment requirements to create test data and the test environment, it does not cover test conditions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Which of the following statements is a CORRECT example of the value of traceability?

a) Traceability between the mitigated risks and passing test cases provides a means of determining the level of residual risk

b) Traceability between user requirements and test execution results provides a means of measuring project progress against business goals

c) Traceability between testers and failing test cases provides a means of determining the skill level of the testers

d) Traceability between the identified risks and written test conditions provides a means of determining which risks are worth testing

Select ONE option.

A

a) Is not correct. Traceability between the mitigated risks and passing test cases provides little information, because to be mitigated (by testing) the risks would need to have a corresponding passing test case. To be able to assess residual risk, traceability between all risks and test results needs to be available, so that the risks that do not have a corresponding passing test can be identified as the residual risks

b) Is correct. Traceability between user requirements and test execution results provides an indication of which user requirements have been tested and so provides a means of measuring project progress (in the context of testing) against business goals

c) Is not correct. It is not clear that failing test cases provide an indication of tester skills any more than passing test cases. It would partly depend on the test objective (e.g., building confidence or causing failures). Also, such measurement of testers based on passing and failing test cases can be counter-productive as it could cause the testers to optimize their testing based on that metric rather than the test objective

d) Is not correct. Traceability between the identified risks and written test conditions provides a means of determining which further test conditions need to be written. Determining which risks are worth testing is part of risk management, and risk mitigation in particular

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Which of the following is MOST likely to be an example of a tester using a generic skill when testing?

a) The tester’s deep knowledge of a variety of computer games meant that they got on well with one of the developers who was also into gaming

b) The tester was a former pilot and was better able to understand the acceptance criteria for the helicopter control system

c) The tester previously worked as a programmer and used their skills in this area to better communicate with the business analysts

d) The tester was very careful not to make mistakes when they methodically generated test cases prior to starting their exploratory testing session

Select ONE option.

A

a) Is not correct. Strong communication skills, active listening, and teamwork abilities enable a tester to interact effectively with all stakeholders, however a deep knowledge of a variety of computer games that allowed them to get on well with one developer is not an example of a generic skill useful to testers

b) Is correct. Domain knowledge that can be used to understand and communicate with end-users and business representatives is one of the generic skills required by testers. A tester with experience as a pilot would make them better able to appreciate the acceptance criteria for the helicopter control system

c) Is not correct. Although programming skills could be considered as technical knowledge which can increase efficiency when utilizing some test tools, it is unlikely that these skills would improve their communication with business analysts

d) Is not correct. Although thoroughness, attention to detail, curiosity, and a methodical approach to identifying hard-to-find defects are all useful generic skills for testers, it is doubtful they would be generating test cases prior to starting exploratory testing. This is because one of the main tenets of exploratory testing is that the test cases are generated during the testing, not scripted in advance

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Which of the following is an advantage of the whole-team approach?

a) It allows team members to take on any role at any time

b) It only needs a single team to support the complete
development project

c) It embeds business representatives alongside developers in the same team

d) It generates a team synergy that benefits the entire project

Select ONE option.

A

a) Is not correct. The whole-team approach allows any team member with the requisite skills and knowledge to undertake any task, however that does not mean that team members can take on any role at any time. Typically, they only take on roles in which they are competent, and there is no suggestion that every team member can do every role

**b) Is not correct. **The whole-team approach applies to how a single team (typically in Agile software development) works; it does not cover how multiple teams are supposed to work on larger projects, and it does not suggest that only one ‘whole’ team is needed for a complete project

c) Is not correct. The whole-team approach does not expect every team member to be involved in every important decision. For instance, there is no need for the business representative (i.e. the Product Owner) to be involved in every technical decision that does not affect the business outcome and implementing such an approach would unnecessarily slow down the team’s progress

d) 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 team synergy that benefits the entire project

16
Q

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.

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’

17
Q

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.

A

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

18
Q

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.

A

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

19
Q

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.

A

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

20
Q

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

21
Q

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.

A

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

22
Q

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.

A

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

23
Q

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

sa) 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