Can we effectively use Thread.sleep?

4 minute read - Test Automation

TLDR; I use Thread.sleep as a tactic, not a strategy, unless I’m simulating random user pauses, in which case my implementation of that abstraction will involve a sleep.

When do you use Thread.sleep?

I avoid Thread.sleep as much as possible when automating.


How and Why to use Variation in Software Testing

5 minute read - Test Automation

TLDR; Variation is a useful tactic to apply to Software Testing. Often this is random variation within an equivalence class. We can also vary when performing Exploratory Testing. Consider varying order, data, state, timing.

I found what looks like a potential bug in LinkedIn regarding the hastag processing, and it made me think through how applying a Variation tactic could help.


How to assess coverage of automation?

6 minute read - Test Automation

TLDR; Coverage requires some sort of model. We can organise code to support review against a mental model, and some models are executable. Other models we compare against the output of execution.

I was asked a series of questions: How can we document what an automated test does and covers without adding a lot of overhead? How do we know what is not covered by automation?