Skip to main content
Testiform
Testiform
Scenarios

The journeys, step by step

Seven journeys, each one written out before it is run. What follows is the list a scope is drawn from: the order names which of these are in it, how far each is taken, and which browsers and screen sizes they are taken on.

J-01

Registration

A new account created through the form a visitor actually sees.

What is exercised

  • required and optional fields, and the rule each one claims to enforce
  • the wording of every validation message, against the rule behind it
  • where a refusal is announced, and whether the field it belongs to takes focus
  • the confirmation email arriving at a test address
  • the first sign-in with the credentials just set

Written up as failed when

an account is created that cannot then be signed into, a message states a rule the field does not enforce, a refusal is announced somewhere the person filling the form cannot see it, or the confirmation never reaches the test address.

J-02

Sign-in and password recovery

Getting back in, including the path taken when the password has gone.

What is exercised

  • sign-in with correct credentials, and with each half of the pair wrong
  • the reset request, the message on screen and the email that follows
  • the reset link: used once, used twice, and used after it has expired
  • signing in with the new password, and with the old one

Written up as failed when

the old password still works after a reset, a reset link can be spent twice, or the screen tells a stranger which half of the pair was wrong.

J-03

Search

Finding something, finding nothing, and what the page says in each case.

What is exercised

  • terms that match, terms that match nothing, and terms that match everything
  • punctuation, accented characters, trailing spaces and very long queries
  • paging through results and coming back to where you were
  • the empty state: what it says and what it offers next

Written up as failed when

a term that exists in the catalogue returns nothing, an empty result is presented as an error, or paging loses the query.

J-04

Filters and sorting

Narrowing a list, combining the narrowings, and undoing them.

What is exercised

  • each filter on its own, then in combination
  • the result count against the filters that produced it
  • clearing one filter without clearing the rest
  • whether the address bar carries the state, and whether a shared link restores it

Written up as failed when

two filters together return more than either alone, clearing one clears them all, or a copied link opens the list unfiltered.

J-05

Forms

Enquiry, contact, upload and application forms, field by field.

What is exercised

  • every field against the rule it states, with valid and invalid input
  • completing the form by keyboard alone, and the order focus moves in
  • what survives an error: the values already typed, and the position on the page
  • what the page claims after submission, and whether anything actually left the browser

Written up as failed when

an error clears what was typed, a required field can be skipped, or the page reports a message as delivered when nothing was sent.

J-06

Booking

Choosing a slot, holding it, changing it and giving it back.

What is exercised

  • availability shown in the list against availability at confirmation
  • the same slot taken in two browser sessions at once
  • time zones and daylight saving, where the site shows times to a customer
  • changing a booking, and cancelling it

Written up as failed when

one slot can be booked twice, the confirmation names a different time from the one chosen, or a cancelled slot is not offered again.

J-07

Checkout in sandbox

The basket and the payment step, run against the provider’s test facility.

What is exercised

  • basket contents, quantities, removal and the total that follows from them
  • promotion codes: valid, expired, and applied twice
  • delivery and billing addresses, including addresses that differ
  • the payment step with the provider’s published test cards, including the ones that decline

Written up as failed when

a declined test card produces an order, the total at confirmation differs from the basket, or an abandoned attempt leaves an order behind.

Depth

The same journey, taken three distances

A journey appears in a scope with a depth beside it. Without one, two quotes for the same list of journeys are not comparable and neither is the work.

Each level holds everything the level inside it holds, and adds the column on the right.
Ref Depth What it adds
D1 The expected route The journey completed the way it is meant to be completed, with valid input, on one browser and one screen size. Every step is written down and its outcome recorded, pass or fail, so that the run can be repeated later and compared against.
D2 Input it should refuse Each field given what it says it will not take: empty, too long, the wrong shape, the wrong type, the same thing twice. The message that comes back is read against the rule it claims to be enforcing.
D3 Interrupted and resumed The journey broken into part way through: the back button, a refresh mid-step, a session left to expire, the same journey open in two tabs, a slow or dropped connection. What the site does on the way back in is the thing being examined.

Something not on the list above is not excluded by it. Where a site has a journey of its own - a quotation builder, a licence renewal, an application with documents attached - it is written out the same way before it is run, and it goes into the scope under its own reference.

The next step

Test your website before launch

Pick the journeys that matter on the request form, or describe the one that is not on the list above. A scope comes back in writing either way.