I look up, red light.... red light... GREEN. I'm off!
Whoosh. A cement truck shoots past at 40mph, inches from my nose.
[Cold sweat, dry throat]
I look around, remember my green cross code, and cross the road. I make it to the other side safely. After I get over my anger (ok ... fear) I realize the mistake was as much mine as his. I relied on a proxy, rather than examining the real and readily apparent risk.
The red man/green man lights are not going to play truck versus pedestrian, I am - I need to use my head (and eyes!). The lights are based on a dumb set of rules, and clocks. They don't really know if a PSYCHOTIC CEMENT TRUCK DRIVER is playing the game with me, or not. I should use the lights as an indication of when to use my own head, eyes and common sense to check for trucks. I'm a fool if I depend on a set of [installed by the lowest bidder] lights and timers to tell me if a [speeding, badly driven] truck is heading straight for me.
Your automated tests are just like the traffic lights, they display red/green based on a set of dumb non-sapient rules. They check for pre-determined responses, a particular string, number or response code. What that actually means is that a given string etc was supplied, not that all the hidden action [i.e.: trucks speeding just round the corner] is behaving itself correctly.
The automated tests are a start, an indicator, and maybe if they are all showing Green, you need to smarten them up a little. Get them to check for some indicators that might help you see the bugs. (Maybe they could check for errors in the logs, or other less visible symptoms)
Of Mime and Men
5 months ago