SaveMyCert
Log in
5 of 5 free questions left today·for 30 a day
Fundamentals of Testing

ISTQB CTFL Tester Skills, Whole Team Approach and Independence of Testing

10 min readCTFL · Fundamentals of TestingUpdated

Essential skills and good practices in testing are the generic abilities a tester needs (testing, technical and domain knowledge, thoroughness, communication and analytical thinking) together with two ways of organising testing: the whole team approach, where everyone shares responsibility for quality, and independence of testing, where people other than the author test a work product. This lesson covers CTFL v4.0.1 section 1.5: which skill serves which purpose, why defects must be reported constructively, what the whole team approach gives a team and when it is not enough, and how the four levels of test independence trade benefits against drawbacks.

What you’ll learn
  • Give examples of the generic skills testers need and match each group to what it improves: effectiveness, efficiency, finding hard defects or working with stakeholders
  • Explain why testers are bearers of bad news, how confirmation bias affects the way defect reports are received, and how to communicate defects constructively
  • Recall what the whole team approach is, where it comes from and its advantages: team dynamics, communication and collaboration, and synergy
  • Describe how testers collaborate with business representatives and developers in a whole team, and when the approach is not appropriate on its own
  • Classify testers into the four levels of independence: none, some, high and very high
  • Distinguish the benefits of independent testing from its drawbacks, and explain why independence does not replace developer familiarity

What generic skills does a tester need?

A tester needs six groups of generic skills, and the syllabus pairs each group with what it contributes. Knowing the pairing matters more than memorising the list, because a scenario usually describes a behaviour and asks which skill it shows.

Skill groupWhat it contributesExample of the skill in use
Testing knowledgeIncreases the effectiveness of testingApplying decision table testing so every combination of business rules is covered systematically
Thoroughness, carefulness, curiosity, attention to detail, being methodicalIdentifying defects, especially ones that are hard to findFollowing up a small oddity in a log, or systematically checking every field instead of sampling
Good communication, active listening, being a team playerInteracting with all stakeholders, conveying information, being understood, and reporting and discussing defectsExplaining a failure to a developer and listening to their view of the expected behaviour
Analytical thinking, critical thinking, creativityIncreases the effectiveness of testingAsking what should happen when an order is cancelled after it has partly shipped, a case the specification never mentions
Technical knowledgeIncreases the efficiency of testingWriting a script that generates large volumes of test data, or querying the database to check a stored result
Domain knowledgeUnderstanding and communicating with end users and business representativesKnowing the payroll regulations on overtime well enough to check the expected pay in a test

Two near-twins are worth separating. Testing knowledge is about testing itself (techniques, levels, approaches); technical knowledge is about the technology and tools used to test. A tester designing tests with a test technique shows testing knowledge; a tester scripting test data or working with a tool shows technical knowledge. Likewise, domain knowledge is about the business the software serves, not about software or testing.

Why must testers communicate defects constructively?

Testers must communicate defects constructively because they are often the bearers of bad news, and people tend to blame the bearer. A test result can be heard as criticism of the product and of its author, and some people see testing as a destructive activity, even though it contributes greatly to project success and product quality.

Confirmation bias makes this harder: it is the tendency to find it difficult to accept information that disagrees with what one currently believes. A business analyst who wrote a requirement may dismiss a failure reported against it because it contradicts their belief that the requirement is complete, not because the evidence is weak.

Constructive communication means:

  • describing each failure objectively and factually: what was done, what was expected, what happened;
  • keeping the report about the work product and its behaviour;
  • reporting each defect clearly enough that it can be understood and acted on;
  • presenting testing as a shared contribution to quality.

This is why communication skills are described as crucial for testers: the value of a found defect is lost if the report is not accepted.

What is the whole team approach?

The whole team approach is a practice, originating from Extreme Programming (XP), in which any team member with the necessary knowledge and skills can perform any task and everyone is responsible for quality. Job titles do not decide who does a task; skills do. Quality is a shared responsibility of everyone on the team.

Team members share a common workspace, which can be physical or virtual, because co-location makes communication and interaction easier. A distributed team working in a shared virtual workspace can still follow the approach.

The approach rests on closeness: people with different skills work together throughout development. Independent testing, covered later in this lesson, rests on the opposite idea of deliberate separation between author and tester.

What are the advantages of the whole team approach?

The whole team approach has three advantages listed in the syllabus:

  • Improved team dynamics;
  • Enhanced communication and collaboration within the team;
  • Synergy, because the various skill sets within the team can be leveraged for the benefit of the project.

All three advantages come from people working closely together. The benefits of independent testing, described below, come from separation instead, so the two practices pull in different directions and their advantages should be kept apart.

How do testers work in a whole team?

In a whole team, testers work closely with the other team members to make sure the desired quality levels are reached. The syllabus names two specific collaborations:

  • with business representatives: helping them create suitable acceptance tests;
  • with developers: agreeing on the test strategy and deciding on test automation approaches.

Through this collaboration testers transfer testing knowledge to other team members and so influence the development of the product, beyond the testing they do themselves. Their influence comes from sharing what they know and collaborating, while responsibility for quality stays with the whole team and developers continue to test their own work.

When is the whole team approach not appropriate?

The whole team approach is not always appropriate, and the syllabus's example is safety-critical software, where a high level of test independence may be needed. Depending on the applicable standards, regulated domains such as avionics or medical devices may require verification by people outside the development team.

The syllabus does not prescribe a fix, but a common practical approach is to combine the two practices: the team keeps its collaboration and its own testing, and testing by people outside the team supplies the independence the context demands. Shared ownership of quality and independent verification answer different needs.

What are the levels of independence of testing?

Independence of testing describes how far the person testing a work product is from its author. The syllabus defines four levels:

LevelWho tests the work product
No independenceThe author (for example, a developer testing their own code)
Some independenceThe author's peers from the same team
High independenceTesters from outside the author's team but within the organization (for example, a QA group in another division)
Very high independenceTesters from outside the organization (for example, an independent certification lab)

The level is decided by three questions about the tester: same person as the author? Same team? Same organization?

What are the benefits of independent testing?

The main benefit of independent testing is that independent testers are likely to recognize different kinds of failures and defects than developers, because they have different backgrounds, technical perspectives and biases. The syllabus also states that a certain degree of independence makes the tester more effective at finding defects, due to differences between the author's and the tester's cognitive biases: an assumption the author never questioned can be one the tester naturally tests.

A second benefit is that an independent tester can verify, challenge or disprove assumptions made by stakeholders during specification and implementation of the system, for example by asking whether a stated peak-load figure in the specification was ever validated.

In both cases the value comes from a different perspective on the same work product.

What are the drawbacks of independent testing?

Independent testing has three drawbacks:

  • Isolation: independent testers may be isolated from the development team, leading to a lack of collaboration, communication problems or an adversarial relationship with the developers;
  • Lost responsibility: developers may lose their sense of responsibility for quality, assuming the testers will catch everything;
  • Bottleneck and blame: independent testers may be seen as a bottleneck or be blamed for delays in release.
Benefits of independenceDrawbacks of independence
Recognises different kinds of failures and defects (different backgrounds, perspectives, biases)Isolation: poor collaboration, communication problems, adversarial relationship
Verifies, challenges or disproves stakeholders' assumptionsDevelopers may lose their sense of responsibility for quality
Different perspective from the author's cognitive biasesTesters seen as a bottleneck or blamed for release delays

Notice that the drawbacks come from separation and from shifted responsibility rather than from the different perspective itself. That is why a common practical way to limit them, beyond what the syllabus states, is to keep independent testers in regular, early contact with the developers while developers stay responsible for testing their own work.

Why is independence not a replacement for familiarity?

Independence does not replace familiarity: developers can efficiently find many defects in their own code because they know it well. More independence is therefore not automatically better.

For most projects it is usually best to test with multiple levels of independence, for example:

  • developers performing component and component integration testing (familiarity);
  • a test team performing system and system integration testing (high independence);
  • business representatives performing acceptance testing.

Each level contributes something the others lack. The author knows the code and finds many defects quickly; someone further away brings different assumptions. Suppose a developer builds a monthly report expecting it only ever to be run over one month of data. A tester from another team, who never shared that expectation, runs it over several years of data and it times out. Combining both perspectives catches more than either alone.

Tip. Expect mostly short recall and understanding items. Skill questions describe what a tester does and ask which generic skill it shows, so know which group serves effectiveness, efficiency, hard-to-find defects, stakeholder communication or business understanding, and keep testing, technical and domain knowledge apart. Communication items turn on confirmation bias and reporting defects about the product, not the author. Whole team items cover its origin, its advantages, the tester's collaboration with business representatives and developers, and its limits. Independence items cover the four levels, the benefits and drawbacks, and why familiarity still matters.

Key takeaways
  • Testing knowledge (e.g. test techniques) and analytical, critical and creative thinking increase effectiveness; technical knowledge (e.g. test tools) increases efficiency.
  • Thoroughness, curiosity, attention to detail and being methodical help find defects, especially hard-to-find ones; domain knowledge helps communicate with end users and business representatives.
  • Testers are bearers of bad news and confirmation bias makes people resist conflicting information, so defects are reported objectively and about the product, never the person.
  • The whole team approach comes from Extreme Programming: anyone with the needed skills can do any task, everyone is responsible for quality, and the team shares a physical or virtual workspace.
  • Its advantages are better team dynamics, enhanced communication and collaboration, and synergy from the team's combined skill sets.
  • In a whole team, testers help business representatives create acceptance tests, agree test strategy and automation approach with developers, and transfer testing knowledge.
  • Safety-critical contexts may need a high level of independence that the whole team approach alone does not give.
  • Independence levels: author (none), same-team peers (some), outside the team but inside the organization (high), outside the organization (very high).
  • Independence finds different kinds of defects and challenges assumptions, but risks isolation, developers losing responsibility for quality, and testers seen as a bottleneck.
  • Independence does not replace familiarity; most projects test at multiple levels of independence.

Frequently asked questions

What is the difference between testing knowledge and technical knowledge in the CTFL syllabus?

In the CTFL syllabus, testing knowledge is knowledge of testing itself, such as decision table testing, and it increases the effectiveness of testing. Technical knowledge is knowledge of the technology and tools, such as scripting test data, and it increases the efficiency of testing.

Where does the whole team approach come from?

The whole team approach is a practice that originates from Extreme Programming (XP). In it, any team member with the necessary knowledge and skills can perform any task, and everyone in the team is responsible for quality.

What are the advantages of the whole team approach?

The whole team approach improves team dynamics, enhances communication and collaboration within the team, and creates synergy by letting the team's different skill sets be used for the benefit of the project.

What are the four levels of independence of testing?

The four levels are: no independence, when the author tests their own work; some independence, when peers from the same team test it; high independence, when testers from outside the author's team but within the organization test it; and very high independence, when testers from outside the organization test it.

What is the main benefit of independent testing?

The main benefit of independent testing is that independent testers are likely to recognize different kinds of failures and defects than the developers, because of their different backgrounds, technical perspectives and cognitive biases. Independent testers can also verify, challenge or disprove assumptions made during specification and implementation.

What are the drawbacks of independent testing?

Independent testers can become isolated from the development team, causing poor collaboration, communication problems or an adversarial relationship. Developers may also lose their sense of responsibility for quality, and independent testers may be seen as a bottleneck or blamed for release delays.

Is more test independence always better?

No. Independence is not a replacement for familiarity, because developers can efficiently find many defects in their own code. For most projects it is best to test at multiple levels of independence, for example developers doing component testing, a test team doing system testing and business representatives doing acceptance testing.

Why do defect reports get rejected even when they are correct?

Testers are often bearers of bad news, a test result can feel like criticism of the product and its author, and confirmation bias makes it hard for people to accept information that disagrees with what they believe, such as a defect in work they consider finished. Reporting defects objectively and constructively, about the product rather than the person, reduces this resistance.

Source

This lesson covers the "Fundamentals of Testing" domain of the official CTFL exam guide. Vendors revise their guides — check the source for the current version.

Test yourself on this topic
Practice now

Sign up free to mark lessons complete, bookmark topics and track your exam readiness.

Spotted a mistake in this lesson?