Difference Between Test Plan, Test Strategy, Test Case, Test Script, Test Scenario and Test Condition

Test Plan Vs, Test Strategy Vs Test Case Vs Test Script Vs Test Scenario Vs Test Condition with examples:

Our popular software testing questions and answers series is back again! Just to remind – in this series we answer questions asked by the readers. You can check some earlier posts in this series here and here. Got a question? Submit it in the comment section below or use the contact form.

In today’s article in this series, we are going to answer (with examples) some most commonly asked (and confusing) questions about the difference between test plan, test strategy, test case, test script, test scenario and test condition. 

These questions are asked by “Sasi C”.

“We almost have an overload of technical terms when working in an IT environment. There are processes, documents, tasks and everything else that is addressed by its own technical name. Now, how are we to remember, understand and use them in the right context every single time?”.

software testing questions and answer series

This is the question that is most often asked in our software testing class and I always tell our participants that with an experience we hardly notice these words and that they become a part of our vocabulary.

But often, confusion surrounds these and in this article today I am trying to define few commonly used terms.

Difference Between Test Plan and Test Strategy

The test plan is a term and a deliverable. The test plan is a document that lists all the activities in a QA project, schedules them, defines the scope of the project, roles & responsibilities, risks, entry & exit criteria, test objective and anything else that you can think of. The test plan is as I like to call a ‘super document’ that lists everything there is to know and need. Please check this link for more information and a sample.

This is also a deliverable and also a document at that. Test strategy outlines the testing approach and everything else that surrounds it. It is different from the test plan, in the sense that a Test strategy is only a subset of the test plan. It is a hardcore test document that is to an extent generic and static. There is also an argument about at what levels test strategy or plan is used- but I really do not see any discerning difference.

Example: Test plan gives information about who is going to test at what time. For example, Module 1 is going to be tested by “X tester”. If tester Y replaces X for some reason, the test plan has to be updated.

On the contrary, a test strategy is going to have details like – “Individual modules are to be tested by test team members. “ In this case, it does not matter who is testing it- so it’s generic and the change in the team member does not have to be updated, keeping it static.

Further reading => Guide to writing a good Test Strategy document.

Difference Between Test Case and Test Script

In my opinion, these two terms can be used interchangeably. Yes, I am saying there is no difference. The test case is a sequence of steps that help us perform a certain test on the application. The test script is the same thing.

Now, there is one school of thought that a test case is a term used in the manual testing environment and test script is used in an automation environment. This is partly true, because of the comfort level of the testers in the respective fields and also on how the tools refer to the tests (some call test scripts and some call them to test cases). So in effect, test script and test case both are steps to be performed on an application to validate its functionality whether manually or through automation.

Further reading => Writing effective test cases, tips for writing test cases, test case example template.

Difference Between Test Scenario and Test Condition

This is a one-line pointer that testers create as an initial, transitional step into the test design phase. This is mostly a one-line definition of “What” we are going to test with respect to a certain feature. Usually, test scenarios are input for the creation of test cases. In agile projects, Test scenarios are the only test design outputs and no test cases are written following these. A test scenario might result in multiple tests.

Examples of test scenarios:

1. Validate if a new country can be added by the Admin
2. Validate if an existing country can be deleted by the admin
3. Validate if an existing country can be updated

Test conditions, on the other hand, are more specific. It can be roughly defined as the aim/goal of a certain test.

Example test condition:
In the above example, if we were to test the scenario 1, we can test the following conditions:
1. Enter the country name as “India”(valid )and check for the addition of the country
2. Enter a blank and check if the country gets added.
In each case, the specific data is described and the goal of the test is much more precise.

Further reading => 180+ sample test scenarios for testing web and desktop application.

Difference Between Test Procedure and Test Suite

The test procedure is a combination of test cases based on a certain logical reason, like executing an end-to-end situation or something to that effect. The order in which the test cases are to be run is fixed.

For example, if I was to test the sending of an email from Gmail.com, the order of test cases that I would combine to form a test procedure would be:

1. The test to check the login
2. The test to compose an email
3. The test to attach one/more attachments
4. Formatting the email in the required way by using various options
5. Adding contacts or email addresses to the To, BCC, CC fields
6. Sending an email and making sure it is showing in the “Sent Mail” section

All the test cases above are grouped to achieve a certain target at the end of them. Also, test procedures have a few test cases combined at any point in time.

The test suite, on the other hand, is the list of all the test cases that have to be executed as a part of a test cycle or a regression phase, etc. There is no logical grouping based on functionality. The order in which the constituent test cases get executed may or may not be important.

Example of the test suite: If an application’s current version is 2.0. The previous version 1.0 might have had 1000 test cases to test it entirely. For version 2 there are 500 test cases to just test the new functionality that is added in the new version. So, the current test suite would be 1000+500 test cases that include both regression and the new functionality. The suite is a combination too, but we are not trying to achieve a target function.

Test suites can contain 100s or even 1000s of test cases.

Recommended Tool:

#1) TestRail:

testrail logo

If you have a large number of test cases, a test case management tool like TestRail is essential. TestRail provides comprehensive, web-based test case management to help teams organize testing efforts and get real-time insights into testing activity.

Compare results across multiple test runs, configurations, and milestones. Monitor team workload to adjust assignments and resources, and work more productively with personalized to-do lists, filters, and email notifications.

TestRail has both cloud-based or on-premise installation options. 

=> Learn more about TestRail and get a free 30-day trial on their website


This brings us to the end of this definition based segment.

Usually, articles like these are excellent starting points for deeper discussions. So, please contribute your thoughts, agreements, disagreements and anything else, in the comments below. We look forward to your feedback.

We also welcome your questions about software testing in general or anything related to your testing career. We will address these in more details in our upcoming posts in the same series.

Thanks, Swati S. for helping us to answer these questions.

PREV Tutorial | NEXT Tutorial

Recommended Reading

60 thoughts on “Difference Between Test Plan, Test Strategy, Test Case, Test Script, Test Scenario and Test Condition”

  1. Very good article.
    I would have added more details about the strategy…it is something seldom taken into consideration. the definition that I like best: “A test strategy is an outline that describes the testing approach for testing in the software development cycle. It includes the testing objective and methods of testing.”. also James Bach description of a strategy is quite nice and simple: Specific, Practical, Justified.

  2. Hi ,

    This is very informative blog , In simple Term, Manual testing more commonly called as test case in which include a input value ,execution precondition , expected results etc . Test script is like a one type of program written in programming language used in test plan of functionally . Test scenario means to have more test case .

  3. Hi,
    If application is travel portal and changes are happening frequently then how to design test cases for frequent changes in functionliaty.

  4. Hi! I would like to add smth:
    “During test implementation the test cases are developed, implemented, prioritized and organized in the test procedure specification (IEEE STD 829-1998). The test procedure specifies the sequence of actions for the execution of a test. If tests are run using a test execution tool, the sequence of actions is specified in a test script (which is an automated test procedure).”

    So according to syllabus for exam: test case and test script are different. We can say that test procedure and test script are the same (manual and automated testing). So test script is SEQUENCE OF ACTIONS to execute the test (test – is 1 or more test cases according to IEEE 829). And Test Case is set of input values, exec precondition, expected results and exec post condition. All definitions are from glossary and syllabus for exam.

  5. To the Author,

    Article is written in a nice way and looks professional though I tend to disagree on the point that says “Test Strategy” is a subset of “Test Plan”. I think this is wrong. Plan comes out of the Strategy. Test Strategy is the first document that is created in Software Testing Life Cycle and usually created by the people of the Test Manager level. So Test Strategy comes first, Test Plan is the second in the hierarchy, Test Specification (List of test scenarios) is the next to Test Plan, From Test Scenarios, the Test Cases are derived and then the test execution starts.

  6. I suggest its helpful if any article regarding importance of automation tools is provided
    And which is best tool for the starters who don’t have any knowledge on automation tools with good manual testing experience.

  7. I have to write a test plan for load test for a banking software.I just want to know for load test should I have to write a test plan or test strategy or scenario or something else?
    How can I start to write that as I have no previous experience?

  8. I am currently doing manual testing.
    Is there future only in manual testing?
    Or Do I need to study automation?
    Which one do you suggest ?


  9. @Azharuddin Khan: Functionality scope has to be constant for us to write test cases accurately. However, if in real time this is not happening, it can be quite challenging – I will suggest keeping in touch with the developers, designers and BA to stay informed and communicate that frequent changes are going to make testing inaccurate

  10. @Ramarajan: Test suite is all the test cases. Test set is a list of test cases that are going to be executed as a group- this might be all or some. Thank you for submitting your question

  11. @Vivek: It depends. If you want to become a manager, it is better to learn Quality Assurance and Project Management subjects. If you want to stay and grow into a much more technical role, then automation might be your next step. In any case, automation knowledge is good to have.

    Also, skill upgrading is always a necessity. So one way or the other, try automation testing. It is fun :)

  12. To the author…

    Article is good to some extent.

    but difference between test strategy and Test plan is not correct according to the global standards and all major testing institutions and Boards.

    Test Strategy is very high level Document when compared to test plan and after test strategy only Test plan will be prepared.

    Plz verify IT

  13. @chandy: Thank you Chandy for letting you know that you differ from us. This is exactly what we wanted to initiate- a brain storming of sorts. We are glad you could contribute

  14. Test strategy nothing but type of level of testing like unit testing , integrate testing ,system testing acceptance testing. Test case is nothing but set of producer that use to test the build with vaild and invaild test data by using requirements.

  15. Very informative article

    But im not quite sure about Test procedure and Test suites, I though test procedures are actually test case steps and Test suites are a collection or combination of test cases of related functions within a module.

  16. Hello,

    I read this 2-3 times and I came up with certain questions based on my Testing knowledge, Test artefacts knowledge.

    1. You mentioned ‘Test Plan’ is a ‘Document’? How a plan is a document? A plan in your ‘Head’ and when it is formally / informally documented it takes shape of Test Plan Document. Isn’t it? You can have a Test Plan and may not have it documented at all? The kind of documentation you are suggesting is based on IEEE Test Plan Document Template created with a different vision or it may also take shape from a ‘organization’ tailored ‘Test Plan Template’. Also, from a Test Management Tool perspective (QC, MSFT – VSTS and others), a ‘Test Plan’ is a ‘collection’ of carefully selected ‘Test Cases’ targeted / being scheduled to be ‘Executed’ for a coming release.

    When someone ‘Plan’ testing, it is not necessary to have that documented at all unless it is a ‘Necessity’ defined by the ‘Context’ of the software Project / Product being tested. As I learnt and I am completely agree with James Bach over definition of test plan which reads as ‘A good test plan, whether documented or not, expresses a set of choices about the test process’

    2. In a similar way you described ‘Strategy’ again as a document, No it is not, a test strategy guides your ‘Test Design’, Its not generic, It is Specific to the ‘Product’, ‘Project’, ‘Component’ you are testing. It is not ‘Static’ as well, it is ‘Dynamic’ in nature unless you believe that there is nothing to ‘Learn’ in the system as you go ahead with testing it and from that learning of the system, you have nothing to ‘Optimize’, nothing to ‘Add’, ‘Deprecate’ from your Strategy. As you test the software product, Strategy evolves over the time and that’s the beauty when you look at it once you deliver the software testing information to your manager and feel ‘awesome’ for your ‘Test Strategy’ which helped you in Testing software with ‘Efficiency’, ‘Effectiveness’, ‘Economically’, ‘Aggressively address all risk areas and coverage’.

    In essence Planning and Strategy should never be confused by ‘Documentation’ tag to it. Its more than that.

    I would be glad to hear your comments on it

  17. Thank you , this is really helpful to clear basics of testing.
    But I am not clear or having confusion about defining following things…….

    1. Model 2. Methodology 3. Framework 4. approach, 5. Scope 6. methods. If any one can help me to differentiate this, then it will really helpful for me…?

  18. I think Strategy is nothing but a sub set of test plan which defines some set of rules like constraints that we have to follow/focus while using test plan or even during test execution cycle.

  19. This artucle is very good. I read the article completely including all comments. Thank you all for your contrubution.

    Here is my understanding on Test Plan and strategy.

    In some organization test strategy is kept as a separate document and some include test strategy as a sub section in Test plan itself. There is no hard core rule.

    As Swati said test strategy is static, it is partly true but not very static in nature. It is updated when the cope of testing changes or a new type of testing is added to the project.

    As in my organization test strategy was updated after a year to include 508 testing as per regession suite.

    But test plan used to update for each release. It maybe once in a quarter for major release and twice in a month for minor release.

    Any comment on this are welcome.

    Pramod Mallick

  20. I agree with Mihir Mehta. Test Strategy is THE first document dreated during the Project Initiation phase. Test Plan follows


  21. I have just started software testing course ; Please suggest me most important basic things that i need to know to get a good understanding of testing. I’ll be very thakfull to you.

  22. Thanks a lot Vijay for sharing this wonderful information with us.

    I do have a question here.

    What is the difference between test case and test condition ?

  23. Brilliant set of articles, but I’m still a little confused as to the order and hierarchy of documents: Do the Test Scenarios come before the Test Plan? It seems from your daily process for the Orange project that the Test Scenarios, precede the preparation of the Test Plan.

  24. Hi, I am also interested in question from Debanjan in comment #44 “What is the difference between test case and test condition ?”

  25. Hi, how do we create batch file(.bat) to execute selenium test suite when we are adding jar/library files using Maven dependencies.

Leave a Comment