Make a test list

In agile, Big Design Up Front (BDUF) is something to be avoided, but that doesn’t mean we don’t do any design at all. Before starting to code with TDD it really helps to spend a few minutes on Little Design Up Front. Part of that is making a list of test cases we will work on. In this learning hour we learn why this is important but will not necessarily become skilled enough to actually do it.

Learning Goals

Session Outline

Connect

Go to the choose your own adventure page and review the options A,B,C,D. Choose an option and read the suggested consequences. Read any other consequences you feel like. Turn your camera off while you’re doing the exercise, turn it back on when you’re done. (Alternatively, raise and lower a hand)

Share with the group which option you first chose.

Note - encourage people to be honest, not just give the answer they think you want.

Concept: Test List

Before writing your first test, you should do a little analysis and identify scenarios that you’ll want to make into test cases. Remind people of the test lists you used for previous katas you did in other sessions. When you have reviewed two or three test lists, ask them what the characteristics are for a good test list. You’re looking for things like:

Write these characteristics up on a whiteboard.

Concrete: Write test lists

Ask them to work in pairs to come up with a test list.

Repeat with a second problem if there is time, for example Fractions or MontyHall or BankAccount.

Conclusions: how can we use this?

If you didn’t choose option B in the warmup:

If you did choose B in the warmup:

Discuss in pairs.