Exploratory Interfaces 4: Tests
We can explore tests; reading through them to judge whether they are any good.
Here is a different framing...
- If tests are executable, then those tests describe the product in a way that can be programatically judged.
- If the existing product passes those tests, then the tests describe the existing product. Not what we want from it, but the product itself.
We can explore a product by exploring its passing tests.
Exercise
Explore existing tests
10 mins
Let's look at the tests for a crossword maker. Let's look specifically at those tests which describe valid and invalid crosswords. What can we discover about the crossword maker by collating those tests that describe what it considers to be valid and invalid crosswords?
We'll take subject_e, and start by looking at
Note: you can see the assertions by clicking on each test. You'll need to look at the source of the tests to see the setup etc.
More exploring
Once you're in the (test) source, have a look around to see if we need to widen our search.
Debrief
5 mins
What did we learn about the product from its tests?
Key question: does the product care about valid and invalid crosswords?
Extend...
We can explore a product by exploring its passing tests.
Can we?