I have researched this question on the web, but still don't understand the difference clearly.

please help! thanks.


While studying for the ISTQB exam, I have shrinking down to a more summarised text to help me understand and remember the topics at the exam. Here's a bit of what I have shared in my blog last year.

Before all that you will need a TEST CONDITION.

What is a test condition?

A: An item or event of a component or system that could be verified by one or more test cases.

Test case

A set of input values, execution preconditions, expected results and execution post-conditions, such as to exercise a part of the code.

Test specification

Black box testing – test cases derived directly from a specification or a model of a system or proposed system (documentation)

5 types of specification-based techniques

  • Equivalence partitioning
  • Boundary value analysis
  • Decision table testing
  • State transition testing
  • Use case testing

Test procedure

A sequence of actions for the execution of a test.

Test design

  • Black box techniques
  • White box techniques
  • Experience based techniques

I hope it helps you understand.


Think it this way:

Test case = is a set of conditions under which a tester will determine whether an feature can function as expected.

Test specifications = well defined conditions that will define test results.

Test procedure = how a test is carried out, what to do for step 1, step 2 and etc

Test design = how a test is conceived from abstract ideas into a test case.

Consider this scenario:

You are given an iOS game to test, what you normally do will be:

  1. sit down, use your knowledge, experiences and other techniques (such as brain storm) to decide how to test this game; you may decide to test this game as a gamer playing it from beginning to ending. You are designing a test here.
  2. With this big picture in mind, playing this game as a gamer, you need to specify how to play this game, such as how much time you should play? how many levels you should play? how much score you need to play to? answers to those three questions will be test specifications.
  3. After you start playing this game, you notice there is a nasty game-breaking bug that will be triggered when you kill the second boss using a laser cannon from his behind; you write it down on a piece of paper, I have discovered a big bug, you need to firstly acquire a laser cannon from first level, then go to the second boss, lastly shoot him from behind. This procedure is basically a test procedure, a list of steps you need to carry out in order in order to achieve a testing goal
  4. You can consider this whole scenario as a single test case, but as a general rule, a test case targets a single feature, such as this game can start normally by pressing "start" button.

Why do you care ? If it's for a test then see the answers above, otherwise you'll have to adjust your definitions to the place and and context your are using them in. I saw definitions changing drastically not only between companies but also between teams and managers.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy