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

please help! thanks.

4 Answers 4


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.

Software testing is a method that is used to check whether software products are working fine or not, defects free or not. We also check that actual results or requirements are matched with expected results or requirements. Software testing services companies follow ISO standards for testing the software products. Before testing, we follow some conditions:

Test case: It is a document that has set of data, descriptions, expected results, preconditions and actual results. Test case has parameters i.e Test Scenario, Description, Steps, Preconditions, Test Data, Environment, Expected result, Actual result, Remarks.

Test specification:It is a document that describe what scenarios will be tested and how.

Test procedure:Before release or deployment of software applications, testers use various process or techniques to test or validate software applications, that processes or techniques are called procedure or script specifications.

Test Design:It is a procedure for determining test cases, conditions and test data during testing. On the basis of test, we have 5 types of test design categories:

  1. Specification based design
  2. Model based design
  3. Structure based design
  4. Experience based design
  5. Fault based design

Software testing services companies are strictly using standards for quality assurance. They match criteria to fulfill their testing goals and provide better, attractive and user friendly applications.


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 and acknowledge you have read our privacy policy.