Another kind of “BDD”: Bullet Driven Development

QA is boring. Let’s write our tests with bullets!

Cucumber is great but …

Meanwhile, working on my own apps, I find myself wanting to implement a TDD / Test Driven Development approach. Apparently though, when it’s my time we’re talking about …

Well, I don’t want to write all that long-winded Gherkin. I want an obvious set of tests conceived and detailed asap, then implemented easily. Or, if while coding I have a blast of r̶a̶n̶d̶o̶m̶ ̶p̶a̶r̶a̶n̶o̶i̶d̶ ̶f̶u̶s̶s̶i̶n̶g̶ brilliant test ideas, I want to record my test cases quickly in rough notes, and I’ll implement them later on.

“Futo” is Japanese for “envelope”

What if we were brainstorming our future app at a restaurant on the back of a napkin or envelope ?

killer.spec

The Killer App
* loads successfully
* does some things
* calculates some stuff
* charges happy customers
* ???
* profit !

“Chizu” is Japanese for “Map”

killer_app.chizu

On "loads successfully" do
load_base_app
wait_for_dashboard_screen
end

On "does some things" do
press_things_button
fill_in_things
press_go
end

On "profit !" do
expect(earnings).to be > costs
end

A pretty simple concept, and it’s working so far on a little Rails project I’ve got cooking. I love not having to think about Gherkin. Just make a bullet point and write what you feel. The rest can solve itself.

For the curious

See you in the Matrix :)

--

--

A software dev in test thinking against the grain. “To go faster, simplify, then add lightness.” ~Colin Chapman #cleancode #minaswan #innovate

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Add Lightness | Better Testing, Better Software

A software dev in test thinking against the grain. “To go faster, simplify, then add lightness.” ~Colin Chapman #cleancode #minaswan #innovate