Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Warning
titleWarning: Content Compatibility Notice

Please note that the articles in this documentation feature media from app version 2.0.5. Interface elements may differ in newer versions. Refer to the latest app version for the most accurate information.

Table of Contents

What is a charter, and why is it

...

relevant?

In ET (an Exploratory Testing ) approach, we don't follow predefined steps and or check for well-known expectactionsexpectations. We also don't test in a random way.

While performing ETExploratory Testing, we use our experience and knowledge to uncover new information. Exploring can be done at any moment, at any time, even without a specific, explicit reason whatsoever.

...

To focus our exploration activities, we use a charter. By having a charter, we can focus our attention around on a certain question or concern we want to address. This way, we will be able to can explore in more depth and find information that othewise otherwise would be hard to depict.


Before coming up with a charter, reflect a bit about the following:

  • What is /are my main goal /s for the this testing session?
  • Do I want to deepen knowledge about a very specific "thing" (e.g., feature, flow, behaviourbehavior), or do I have to want a more high-level overview?
  • Will I be using specific resources, tools, or heuristics?
  • Will I be focused on certain quality criteria attributes? (e.g., correctness, performance, accessibility)
  • Do I want to focus my attention more around on positive test scenarios or negative test scenarios?

...

In sum, Why am I going to do this session? What "exactly" will I be looking at ? Using and using what? .

The structure of a charter

...

However, the charter doesn't have a strict structure; , and we can actually taylor tailor it to our own needs.

Examples

Next, there are some examples of possible charters.

...

We can still be focused on a specific feature , or page, but aiming aim to test how it works for different contexts/environments (e.g., browsers).

Info
titleCharter

Explore the login page

Using Chrome, Firefox, Edge, and Opera

To discover problems with CSS styling and JavaScript


Eventually, we may even having have a more focused charter, for example, to depict problems around some specific processing. 

...

Our exploration can be focused on a certain feature/area (e.g., REST API endpoint), and we can explicitly enumerate a subset of items we wish to validate (e.g., operations).

...

Our exploration can be made around specific personas relevant for to the context of our product.

Info
titleCharter

Explore the book store bookstore site

With a mid-age, non-technical teacher persona perspective

To discover problems around the easiness of the whole process of buying books

...

Sometimes we're concerned about product consistency (e.g., in terms of layout, terminology, options, and operations); we can have a charter for that.

Info
titleCharter

Explore the Traffic Report

Using Chrome and different data sizes

To discover consistency problems with other reports


Charters can be used for targeting target specific testing types, such as security testing, for example. We may want to focus our attention and concerns around on specific features and ways of "attacking" them.

Info
titleCharter

Explore the shopping cart

Using Chrome and RestMan extension to perform API calls

To discover if the shopping cart and its related properties can be tampered tamper someway

Info
titleCharter

Explore the product web sitewebsite

Using Chrome to craft and make API calls

To discover problems related to authorization


Tips

Start

...

broad and then go to specifics

Start with broad (i.e. more generic ) charters and common usage scenarios to have a more general idea about the system under test.

Use and stay focused

...

on the charter

While testing, we should stick with the charter; if we depict something a bit unrelated, we can take notes and then decide afterwards afterward if we want to create a charter around that.

Enumerate items you know in advance that you want to cover

You may add a list of bullet points to your charter if you want to enumerate certain aspects you aim to test or subsets for your charter (e.g., operations, and user profiles).

Don't detail too much

Avoid having long charters as, eventually, they will tend to become closer to test scripts and limit your exploration.

Include quality attributes you aim to test

Usually, it is a good idea to know in advance the quality attributes/aspects you will be focused on, so you can target your exploration around those.

Discuss the charters with the team

Provide visibility of what you aim to test. The team can give you feedback about areas or aspects they may consider relevant, among others.

Reuse the charter

Charters can be reused; the findings of sessions with the same charter can and will be mostly different each time a person uses them during a testing session. A charter can be reused by another colleague, a tester, or even a developer.

...