5.1 Test Planning Flashcards

1
Q

What purposes does a Test Plan serve?

A
  • documents the means and schedule for achieving test objectives
  • helps ensure performed test activities will meet established criteria
  • means of communication with team members and stakeholders
  • demonstrates testing will adhere to existing test policy and test strategy (or explains any deviations)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How does test planning benefit the test process and lifecycle?

A

Test planning guides thinking and forces testers to confront future challenges around risks, schedules, people, tools, costs, effort, etc. The planning process is a useful way to think through the effort needed to achieve test project objectives.

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

What is the typical content of a test plan?

A
  • context (scope, test objectives, constraints, test basis)
  • assumptions and constraints
  • stakeholders (rolls, responsibilities, relevance to testing, hiring and training needs)
  • communication (forms & frequency, doc templates)
  • risk register (product risks, project risks)
  • test approach (test levels, types, techniques, deliverables, data requirements, environments, deviations from policy, etc)
  • budget and schedule
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

In iterative SDLCs, what two types of planning typically occur?

A

release planning and iteration planning

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

What does release planning involve?

A

Release planning looks ahead to the release of the product, defines and re-defines the product backlog, and may involve refining larger user stories into a set of smaller user stories.

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

How do testers participate in release planning?

A

Testers in release planning write testable user stories and acceptance criteria, help with project and quality risk analyses, estimate test effort for user stories, determine the test approach, and plan testing for the release.

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

What does iteration planning involve?

A

Iteration planning looks to the end of a single iteration and is concerned with that iteration’s backlog.

Testers involved in this participate in the detailed risk analysis of user stories, determine the testability of user stories, break down user stories into tasks (particularly testing tasks), estimate test effort for testing tasks, and identify and refine functional and non-functional aspects of the test object.

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

What is the definition of entry criteria, and what does it usually include?

A

Entry criteria define the preconditions for undertaking a given activity (like testing). Typical criteria for testing include:

  • availability of resources (people, tools, environments, data, budget, time)
  • availability of testware (test basis, requirements, user stories, test cases)
  • initial quality level of the test object (eg all smoke tests pass

AKA Definition of Ready

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

What is the definition of exit criteria, and what does it usually include?

A

Exit criteria are the objectives required to declare an activity complete. Typical criteria for testing include:

  • measures of thoroughness (coverage level, # unresolved defects, defect density, # failed test cases)
  • completion criteria (all planned tests executed, static testing completed, all found defects reported, all regression tests automated)

Running out of time or budget can also be view as valid exit criteria, if stakeholders have accepted the risk of going live without further testing.

AKA Definition of Done.

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

Given the likelihood of estimation errors increases with the size of the task, how can one increase the accuracy of estimation for a large testing project?

A

By breaking the testing task down into smaller tasks and pieces, each of which can be estimated more accurately. It’s always important to make clear to stakeholders that test effort estimates are based on assumptions and always subject to potential error.

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

How does Estimation based on ratios work?

A

This is a metrics-based technique in which figures are collected from previous projects within the organization to derive standard “ratios” of development time to test time for similar projects. The ratios of an organizations own projects are generally the best source to use in the estimation process.

These standard ratios can be used to estimate the test effort for the new project. For example, if the previous project had a development to test effort ratio of 3:2, and the current project’s development effort is expected to be 600 person-days, test effort can be estimated at 400 person-days.

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

How does the Extrapolation estimation method work?

A

Another metrics-based technique in which measurements are made as early as possible in the current project to gather effort data. As observations are collected, the effort required for the remaining work can be approximated by extrapolating from this data (usually with a mathematical model).

This method is suitable to iterative SDLCs where both the dev and test work go through full cycles in each iteration. For example, the team may extrapolate test effort for an upcoming iteration as the averaged effort from the last three iterations.

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

How does the Wideband Delphi estimation technique work?

A

This is an iterative, expert-based technique in which SMEs make experience-based estimates. Each expert makes their estimation in isolation, results are collected, and the experts discuss any deviations that are out of agreed upon ranges / boundaries. Each expert then makes a new estimation based on that feedback (again in isolation). This process is repeated until consensus is reached.

Planning Poker is a variant of this widely used in Agile.

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

How does Three-Point Estimation work?

A

In this expert-based technique, the SMEs each make 3 estimations: (a) the most optimistic, (m) the most likely, and (b) the worst case scenario. The final estimate (E) is their weighted arithmetic mean.

In the most popular version of this technique, it is calculated as E = (a + 4*m + b) / 6.

The advantage of this technique is that the experts can calculate the measurement error: SD = (b - a) / 6.

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

What are the three most common test case prioritization strategies?

A
  • risk-based, where test cases covering the most important risks are executed first
  • coverage-based, where test cases achieving highest coverage are executed first. A variant is additional coverage prioritization, where each subsequent test case is the one that adds the most additional coverage.
  • requirements-based, where the order of test execution is traced back to the requirement priorities established by the stakeholders
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Why might test cases not be run based on their priority levels?

A

Ideally they always would be, however, this does not work if some test cases or features under test have dependencies (on other, lower priority test cases, or on other factors which require time to complete).

The order of test execution must also account for resource availability. For example, the required test tools, environments, or people may only be available for a specific time window.

17
Q

Describe the meaning of the test pyramid model.

A

The test pyramid is a model showing the different levels of granularity and coverage offered by different types of tests.

Tests higher on the pyramid are complex, high-level, and end-to-end. They typically coverage large amounts of functionality, so fewer of them are needed. They are also typically slower and harder to automate.

Tests lower on the pyramid are simple, fast, isolated, and may cover as little as a single function or code statement. Lots of them are needed to achieve coverage, but they are easily automated.

The number and names of layers in the pyramid varies greatly and can be customized by organization or project.

18
Q

What is the function and purpose of the Testing Quadrants model?

A

This model groups test levels with the appropriate test types, activities, test techniques, and work products in the Agile SDLC.

It supports test management in visualizing these artifacts to ensure all appropriate test types and levels are included in the SDLC and in understanding which test types are more appropriate to certain test levels.

It also provides a way to differentiate and describe the types of tests to all stakeholders, including developers, testers, and business reps.

19
Q

How are the quadrants in the Testing Quadrants model defined?

A

In this model, tests can be either business facing or technology facing, and either support the team (guiding development) or critique the product (measure behavior against expectations). This combination defines the four quadrants.

20
Q

What are the quadrants in the Testing Quadrants model?

A
  • Q1: (tech facing, support the team) Component and component integration tests (unit tests). Automated tests that should be part of the CI process.
  • Q2: (business facing, support the team) Functional tests, examples, user story tests, user experience prototypes, API testing, and simulations. These tests check acceptance criteria and may be manual or automated.
  • Q3 (business facing, critique the product) Exploratory testing, usability testing, user acceptance testing. These tests are user-oriented and often manual.
  • Q4 (tech facing, critique the product) Smoke tests (sanity tests) and non-functional tests (other than usability tests). Usually automated.