Skip to main content

Test cases? This is 2013 you know....

Test cases are getting a very bad press of late. There is a perception that they are a wasteful practice, built carefully and slowly in a dark corner away from all collaboration, sprung on unsuspecting programmers to expose the unanticipated obscure edges of their code.

I don't believe it has to be like that, and I haven't practiced building test cases in that fashion for a long time. I prefer:

Test Ideas - your team are delivering a piece of functionality. You have basic understanding of its aims, maybe a few acceptance criteria. Its time to brainstorm. Grab the people who you think are useful (and perhaps some who are not directly involved), have a time-boxed brainstorm. Thirty minutes should do it. An all round view is required, stay away from the detail. FIBLOTS is an excellent heuristic here. Lets say we've walked away with 40 ideas of areas to test.

Test Scenarios - Time has passed, the team has made discoveries, you've had your first bit of the new functionality. You've realised that of your 40 ideas, there might be 20 you actually really, really need, plus another 10 that you didn't think of in your ideas stage. Give them a bit of care and attention now, adding personas, descriptions, pre-conditions, post-conditions, however you wish to flesh them out. Not too much detail and no steps!

Test Cases - right, now we get down it. You have an idea. You have a resulting scenario. If there are any key tests (hint - attached to acceptance criteria), you can add further details, even a few steps. I personally use this to automate my acceptance tests, rather than creating a manual script, where I think the value of a test case begins to drop dramatically.

In addition, you can show your decisions about what to cover and when in a meaningful way. Always treat your test assets as something which can be iterated on, and bring your test cases out of the 'dark ages.'

Comments

  1. Writing an example test case here ( 1 per topic or so)and there might help verifying the usability of your test ideas, and improve the feedback one gets during review.

    @halperinko - Kobi Halperin

    ReplyDelete
  2. Absolutely, the technique captures the benefits of iteration, review and principles of just enough, just in time.

    The purpose is to be non-prescriptive, so pushing an idea forward to a more detailed stage, is perfectly fine.

    The trick is not to push all your ideas to this stage before verification!

    ReplyDelete

Post a Comment

Popular posts from this blog

Testers Guide to Myths of Unit Testing

One area that testers might be able to enhance their contributions to software development teams is how we perceive and contribute to unit testing. I believe testers busting their own illusions about this aspect of building something good would bring us much closer to developers, and help us realise what other layers of testing can cover most effectively.

Also, I want to do a talk about it, so I figured I would test the premise, see if potential audiences were into it. I put this on Twitter:
Working on a talk about what testers might believe about unit #testing & how we interact with developers creating unit tests. Any challenges/additions for my list below? #development#agilepic.twitter.com/4oT5HE4qs3 — Ash Winter (@northern_tester) December 19, 201730 replies with ideas tends to indicate that people might be into it. 
The ListI thought, as my final blog of 2017, I would provide a super useful list of the myths and legends we as testers might believe about unit testing:
That developer…

Why do Testers become Scrum Masters?

It was late and I was stuck on a train, so I pondered on the question of why do testers often (in my experience) become Scrum Masters. Its a very dear question to me, as its been a big part of my career journey In fact, I've been there and back again. Tester to supposed-to-be-testing-but-being-a-Scrum-Master to Scrum Master, back to Tester and very happy thank you.

I encapsulated my reasoning in the following:
Long train delay, decided to think about a thing. :) Why do testers (in my world anyway) often become Scrum Masters? #testing#agile#scrumpic.twitter.com/FGGXFiBGz1 — Ash Winter (@northern_tester) February 13, 2018The tweet got a lot of traction, and generated a couple of interesting threads which made me think.
Great list. Personally I think that as a scrum master I can add even more towards the goal of quality. — Christian Kram (@chr_kram) February 13, 2018 Perhaps part of the reason for the transition is a growing appreciation of where quality has its roots? If testing i…

Wheel of Testing Part 3 - Applications

I've only had to quit two jobs to finally find the time to finish this blog series. Winning at life. If you need reminders (like I did) check out Part 1 and Part 2 before reading on...

After the first two blogs regarding the Wheel of Testing, I was delighted to receive a few requests for the wheel itself, which got me thinking about applications of it, beyond what its original intent was, which I've explored in detail in part 1 of this series of intermittent blogs. Most models need a little air time to show their value, in software development we crank out models all the time, but I'm not sure how many get used. I am inspired by models such as the "Heuristic Test Strategy Model" by James Marcus Bach, as I have used it and seen the benefits it has brought for my clients, particularly the ability to ask questions. So, I wanted to create a model which has a number of use cases, both real and imagined:

Helping to unlocking a career in testing which may be stuck

It is no…