Test Cases Vs Test Scenarios – Which is Better? (My Experience)

6 years ago, while working with a medium sized MNC, when I suggested to document test scenarios rather than wasting time on preparing full proof document called test cases, all the heads turned to me in annoyance. The look on the faces was clearly conveying that I made a big mistake by suggesting it. Although no one denied the idea but no one even accepted. Everyone felt that following the tradition, i.e. writing test case document, would be safer. I could not argue.

test cases vs test scenarios

After 4 years, the company received a testing project, where the only constraint was time and only expectation was full proof testing. We were in meet again and were discussing about ideas to meet the critical deadline. The application was mainly about search and generating different reports via different menu items. Documenting test cases was supposed to snatch most of the time and we were not sure, how much the document was going to useful to the client. I suggested documenting test scenarios and somehow with some hesitation, everyone agreed. No need to mention that we could save precious time of documentation and could utilize it for testing.

Are Test Cases being replaced fast with test scenarios?

With time, as everything is changing, software industry and processes also have changed a lot.

Traditional waterfall and v-models are being replaced by agile and iterative models. Documentation is necessary but to meet deadlines and making process easy and transparent, way of documentation can be changed.

Documentation of test cases is important when:

  1. Client has asked for the same as part of project
  2. There is no time constraint (I don’t think it’s possible)
  3. Testers are fresher or unknown to product
  4. Company policy (I strongly believe that it can be changed)

Let me share with you one experience:

I and my team were involved in testing a project from fortune 500 company with flexible timelines. We documented test cases with best available template and got it approved from client. Once the build started releasing to QA team, for most of the day, our duty was, mechanically follow 100 test cases per day, update document with pass/fail result and send it to client at the end of the day. Most of the team members started complaining about monotonous work but company was generating revenue.

Then there was a break for one day in between with no new build to test. We sat together at the beginning of the day and were discussing what we were going to do for the day. When I proposed to generate more ideas to improve the test case document, all the team members denied putting in efforts. As per them, there was nothing more to think about as we had covered all the scenarios. And convincing them to think out of box and generate more ideas was really tough.

------------

Most of the time, when we document test cases and that too once approved by client, that human mentality thinks that we have done our job and our mind automatically stops considering any effort to think about other ways to test the product.

And believe me, when test cases document is prepared, we just want to follow it mechanically. Tell me for how many times in your career, you have experienced that you or the team mate offered additional test cases to the approved test cases document?

One more experience:

During weekly team challenge activity, we announced the application and asked the team members to pour in test scenarios. All the team members, including those late responders or non responders put in ideas. Why? There was no formal documentation where they had to fill expected result for every sequence of functionality and pre-condition for each test case. We collected 40 test scenarios in a day and that was a great experience.

To favour my experience, I would like to present an example.

Take a sample application, say login page with username, password, login, and cancel buttons. If asked to write test cases for the same, we will end up writing more than 50 test cases by combining different options and details.

But if test scenarios to be written, it will be a matter of 10 lines as below:

High Level Scenario:   Login Functionality
Low Level Scenarios:

1. To check Application is Launching
2. To check text contents on login page
3. To check Username field
4. To check Password field
5. To check Login Button and cancel button functionality

See Also => 180+ Sample Test scenarios for testing web and desktop applications.

As we all are at short of time, test scenarios work as pain killer spray rather than that old time IODEX. And still the effect is same.

Finally, I would like to summarize the difference as below:

 Test CasesTest Scenarios
What it is =>A concept which provides detailed information what to test, steps to be taken and expected result of the sameA concept which provides one-line information about what to test.
It’s about =>It’s more about documenting details.It’s more about thinking and discussing details.
Importance =>It’s important when testing is off shored and development is onsite. Writing test cases with details will help both dev and QA team in sync.It’s important when time is less and most of the team members can agree / understand the details from one-liner scenario.
Advantage =>One time documentation of all the test cases is beneficial to track 1000s rounds of regression testing in future.
Most of the time, its helpful while bug reporting. Tester just need to give reference of test case ID and does not require mentioning each and every minute detail.
A time saver and idea generation activity, preferred by new generation software testing community.
Modification and addition is simple and not specific to a person.
For a huge project, where group of people know specific modules only, this activity gives a chance to everyone to look into other modules and brain storm and discuss
Beneficial to => A full-proof test case document is a life line for new tester.Good test coverage can be achieved by dividing application in test scenarios and it reduces repeatability and complexity of product
Disadvantage =>Time and money consuming as it requires more resources to detail out everything about what to test and how to testIf created by specific person, the reviewer or the other user might not sync the exact idea behind it. Need more discussions and team efforts.

Finally this post should be concluded as:

Test cases are most important part of Software Development Life Cycle and without the one, it’s tough to track, understand, follow and reason out something. But in the era of Agile, test cases are being replaced fast with test scenarios.

A common test checklist for each type of testing (database testing, GUI testing, functionality testing etc) coupled with test scenarios are the modern artillery for Software testers.  Discussions, trainings, questions and practice can definitely change the final graph of your productivity as well as Bug report matrix.

About the Author: This awesome post is written by STH author Bhumika Mehta. She is a project lead carrying more than 7 years of software testing experience. She loves to test everything exists, appreciates good ideas, and innovations but hates monotonic work.

As usual, we welcome your thoughts and queries. Please tune in.

Recommended reading

72 comments ↓

#1 Kirti Jadhav

thanks for sharing examples.

the preference of test cases or scenarios depends on the availability of time, resources, and their skills.

#2 Poovarasan Murugan

good example.. thanks!!!

#3 sai

Agreed totally,Most of projects which don’t have time lines prefer this method or vice versa both are good has they have own pro’s and con’s.

#4 Sameer

Test scenario approach can be useful in exploratory testing where tester’s experience matters the most.

#5 Yogesh

Really very nice explanation, helpful at fresher level.

#6 Sunny Kumrawat

Good Post!!!

Even i also prefer to follow the test scenario pattern with my team..In today’s agile development model where the time is constraint to deliver the project this process fits best..

#7 Bhumika Mehta

@Kirti, @Poovarasan, @Sai, @Sameer, @Yogesh
Thank you very much for encouraging words and your readership.

@Kirti, @Sameer,
Test scenarios are not bound with exploratory testing only. As mentioned, both has their own pros and cons, Test scenarios are getting more popular with regular testing (no matter what testing type) as it require more thinking and discussion and less documentation.

#8 Prashanth

Agreed to certain Level.

But dont you think Test Scenario is very high level, Just by using the test scenarios you cant identify few issues.

#9 Manander Singh

For the last 3 years I was working for a small firm as a QA.
Where I have full rights i.e. I was the one who lead their testing and their I follow the concept of test scenario and that work effctively. Recently I joined a big MNC a CMMi level 5 company where we have to follow the process and that process contains through test case writing also.
After reading your post I fell , you wrote something that I am feeling here.
Thanks
If I get chance in my company I will try to share this with my team mates.

#10 Sneha

writing test cases requires more efforts rather than focusing on different conditions to test.

while writing test scenarios, focus would be on thinking out of the box and coverage of maximum conditions.

and this is true that once you finish writing test cases for a particular functionality you don’t feel like thinking more for the same as you have already spent more than enough time in WRITING test cases.

#11 rajesh hota

hello vijay sir
this is the very very good testing learning site in the india. i love the previous live project article which was based on orange HRM . i want 2 know how to prepare UAT test case and system test case AND Negative test case for the project .please send me the sample test case of the above 3.

thanks

#12 Mihir Mehta

Hello friends,

I disagree to a certain extent the above article by the author that if there is a time constraint and the methodology is Agile, Test Scenarios will do the work. No I disagree. Executing your tests just on the basis of Test Scenarios is possible but without a gaurantee towards Quality and Customer Satisfaction. Its like knowing about a particular swimming pool in brief and not knowing how deep is the water and jumping in it. I am sorry if I have broker million hearts by saying this but I disagree completely having been working in Software testing area since last 16 years

#13 Pravin

Thanks for sharing your experience and difference for TS and TC.

Now I am using the MANTIS bug tracker tool, I am writing only test cases, so please tell me how to write test scenario in mantis bt.

Thanks

#14 Venki

Its really a good article. But, I think we need to have detailed test cases, where we mention each scnarion in detail. If we miss anything and get caught in production, we can come back to our test cases and drill down if we really had this test case OR we need to include any.

If you have very good testers who can no doubt test each scenario then its good to go for Test Scenarios

#15 Venki

Additionally, can anyone please refer any free tool to manage test cases? Please sugegst

#16 gaurav

Nice one..
Test Cases are for a long run & test scenarios are for short term projects..
In all the situations they can be replacement for each other.

If a person who has written the scenario is on leave due to some urgency, then no one can understand seeing the scenario what to test so at times both have their own importance.

Lesson learned is , don’t follow the process blindly, use the process case by case

Regards
Gaurav K

#17 Bhumika Mehta

@Prashanth

Test Scenarios are not high level but as I mentioned discussions, trainings, questions and practice can make it more fruitful.

#18 Bhumika Mehta

@Manander , @Sneha, @Pravin, @Rajesh,

Thanks for your readership and we are glad that you liked the article and it was helpful.

#19 Bhumika Mehta

@Mihir Mehta

Thanks for sharing your views and we respect it and believe me, no heart was broken by reading your comment :-).
With that I would like to point out following facts :
1. Test Scenarios are faster and brief version of testcases. Please refer above mentioned example of login page test scenarios. you will be able to see / understand what those low level scenarios are and with years of experience, you must be clear about the coverage of each low level scenario.
2. Test Scenario is not about knowing about swimming pool but not knowing the depth and details. You can better summarize it as – knowing each and every detail about swimming pool like depth, width, color and purity of water, capacity, opening and closing time etc. but presenting the details in a way that it takes minimum time and stack holders can easily understand them.
3. Test Scenarios are more about continuous practice, discussion, training and questions.

Thanks !!!

#20 Archana

Hello Bhumika,

Today’s software trend is so dynamic, that test case written a year ago, cant be used, because software has updated/changed so rapidly.

Its wells said that Test scenarios are better in everyway. As they reduce time. And in this case, Test scenarios are better.

Archana

#21 Bibhu

@Bhumika,
Appreciate your effort for the nice article. Agree on your previous comment ‘Test scenarios will surely accomplish less documentation as well as bring down the testing effort’ but w.r.to requirement coverage, Is it possible get a good requirement coverage without using any formal testing techniques?

#22 Reegan Kothari

it’s like one day cricket match replaced by 20-20.
In Less time we enjoy much

#23 Priyanka

Great Post!!!

My day starts with reading the Posts of this Website….
Simply amazing

#24 Vijay Gupta

Agree! But if have ample time in hand, test cases should be grouped as positive and negative cases further grouped by Test Scenarios. It also depends on the type of application and methodology followed.

Also, one should keep time aside (in every iteration) to do exploratory testing as it is the one which is most likely to find bugs that are otherwise discovered by the client/end users

#25 Bhumika Mehta

@Archana, @Reegan, @Priyanka

Thanks for stopping by commenting kind words. We appreciate your readership.

#26 Bhumika Mehta

@Bibhu,
Test Scenarios is a formal, well-accepted testing technique and as I mentioned in the post, with practice, training, experience and discussion, someone can masterize the skill of writing test scenarios with proper details while not spending more time on documentation.

#27 Nitin D.

Great work Bhumika…as always.

I really appreciate your work. I am regular reader of this site and your articles. Keep writing your experience.

One difference missing,I think, is TC are based on specs, on the other hand TS are based on user requirements.

In the end user requirements/satisfaction are more imp than specs, so I think TS should get higher points.

#28 Bhumika Mehta

@Nitin D

Thanks for your readership and we really appreciate your kind words.
Thanks for pointing out that difference. That’s correct.

#29 Inder

In Agile testing, even making a test case document is not needed, as Test cases are documented in the test management tool itself. What is needed is unique and out of the box Test scenarios, which cover all regression as well as Functional aspects of the requirements.

Finding and executing great Test scenarios make you a better testers and helps to find bugs which are not found in normal test procedures.

Great post… thanks!!

#30 Tanzeem Ahmed

Hi,
I was a java developer for 4 years and now moved to testing. I am starting with manual testing and later move on to selenium once i get a strong hold on business knowledge and testing concepts. I found your site on Google its Amazing and thanks for the wonderful job. Since, there is so much information i am confused where to start, Appreciate your help if you can point a flow to navigating from beginner to advance testing articles.

#31 Latha Dileep

Excellent and very useful post ..

Thanks you…

#32 Nanda

Test cases – contains one user action at a time
will record the id, pre condition, module name and record the user actions on Test Description and based on the user actions will write the expected result based on the requirement and validate.
Test Scenarios – is nothing but combination of group of test cases it should be more than 2 to 50/more. Mostly covers the positive flow and real time negative flow (if a user logs on different CPUs and trying to perform action on previous cpu – what will happend like that)
Test Cases should ensure system testing have done thoroughly incase of any defects found on live will perform Root Cause Analysis on what & where went wrong etc, but on scenario’s not all the failure cases will perform RCA

This strategy will be defined on TPD and get approval from PM / DH.

Test Scenario’s are really important to derive real time positive / negative flow and how the software responds to the user.
But personally i dont recommend will skip Test Cases and maintain only Test Scenario’s. Both are required for delighting the customers.

#33 Pandit

Dear author, thanks for the post. Agree that the TS is diligent task as compare to TC and yes its my experience. At fresher level I have been trained to write test cases and as time goes I started TS writting unknowingly realizing it as less time consumable. Then I discussed with my peers formally (some agreed, some not). Later we initiate this in our weekly call, again, we did not got 100% +ve response from our senior and the decision left to our suitability keeping high quality product. So write TS for large project which need to finish in less time and TC for the project having enough time.
The post is encouraging my thoughts as well.
Thank you and keep posting!

#34 Bhumika Mehta

@Inder, @Latha, @Pandit

Thanks for the kind words and your readership.

#35 Vaibhav

thanks for sharing examples…..this is helping a lot :)

#36 ParagS

I completely agree. Having more than 8 years of experience and day to day activity of testing. I completely agree because now a days people are following Agile methodology to save time and provide same quality of software in less time. I also agree with that section where its written that if we have offshore QA then test case will impact more rather than test scenario but if you have development and QA working at same place then test scenario and bug report will work and SDLC will be less in time.

Apart from that I would like to add one more practice which we were doing is, to continue add test scenario while doing actual testing. Meaning while testing most of the time you introduce (80% of time) new scenario so test scenario preparation should be done before execution but it should be continuous process while execution cycle as well.

I am sure it will be benefit to someone if we follow this procedure especially you have short deadline and need to deliver very good quality of software.

#37 Bhumika Mehta

@Vaibhav,
Glad to know that it was helpful.

@ParagS
I do agree with your point. Thanks a lot for your readership

#38 Tony

Your post is short sighted and leads folks in the wrong direction. First of all a scenario should be viewed as a series of steps, using “dependant data”. In other words you are testing a use case using data you create and then use. This is simply a methodology and will never replace a test case, but is needed in conjuction with test cases.

Secondly your focus is that of a contractor making short term deliverables of some software. Your proposals actually dont see QA as a full process that includes bug tracking/verification, regression testing and automation. If your tools are integrated you can streamline your processes. For example a TC fails we can push it to JIRA (as is) with all the needed details associated with that single failure. We can also use it to create modular automated tests so we dont have to spend time debugging the scripts to figure out what failed. Lets assume you use sceanrios only … can you do this or will you again have to keep recreating the various test cases to use in various tools. Also what it really leads to is an SME based test team. And that usually ends up badly with folks leaving or taking forever to become productive.

So lets not propose changing these larger processes with a small focus or view

#39 Bibhu

This is really a good post. Most of the time when we write the TC’s unknowingly we are writing TS’s. TS are more helpful than TC when we follow a Agile Process. I have a good experience on this.

#40 Mallika

This is really valid post..I agree with this… Test cases are really helpful to track the testing when there is manageable amount of work and have enough time for testing
But when working in really hectic schedules and when extensive testing is to be carried out, then Test scenarios is a better option which reduces time on documentation and keep track of the results.

#41 Bhumika Mehta

@Bibhu, @Mallika,

Thanks a lot for your readership !!!

#42 Mahesh Mathpal

Word of caution: We need to look when to use what. Let’s not carried away in one direction. This article has given us food for thought.

I manages multiple testing projects/products and use Test scenarios, test cases, and a mix of both.

The decision which approach to choose depends upon various inputs such as Level of Application and Domain understanding, skills/expertise of team, expectations of clients, budget, team size, schedule, conformance to process, deliverables, Knowledge sharing strategy etc.

In any case, We first write the Test Scenarios, then develop test cases. Test Scenarios also helps in identifying the testing coverage and review. Test cases makes you to think and document all possible scenarios.

However, in case you have skilled test engineers and less time then these test scenarios become the basis of testing. And we now RELY ON TEAM’s expertise for quality testing as there is no measure what they have tested under a specific Test scenario.

One of my team don’t write test case and use only Test Scenarios as they know the application/domain in depth. No Production issues. To avoid risk of becoming people depended testing, we have a strict policy of module rotation so that everybody knows about all components of a system.

Other projects where we have Automation in place, there we write test cases which automation team converts in Test Steps.

I hope my comments will offer some more points for the discussion.

Thanks
Mahesh

#43 Bhavesh Desai

Nice

#44 MUKUL GOEL

Thanks for Sharing nice view, but i want to add one more thing, i don’t know readers will agree with my point or not?
but regarding software testing truth is “Test Scenario is ‘What to be tested’ and Test Case is ‘How to be tested”. we create different test scenario to execute different test cases.

Both things are different and we can not say TS is better than TC. For better software testing TC are necessary.

#45 Gaurav Kumar

Hi,

Its really very nice article and helpful in today’s world of testing where we have share the build with client at the end of the day.

Thank you so much

#46 Naresh Gajula

Good explanation in very basic terms.

Also if you can suggest, Which strategy works out better TS or TC ?
My understanding is that each TS can lead into multiple TC’s. If i do not have all the TCs with me, don’t i miss testing few of the possible combinations ?
Thanks.

#47 prateek

Great.. this is really helping me alot

#48 Chetan Metkar

@Bhumika
i agree with you.
i start working with small organization,that time
our QA team used test cases.But now a days the popularity to written test cases are reduces,in place of
most of the mnc are prefer Test scenario.the main reason to prefer test scenario is that not a enough a time to write a proper testcases.Test cases are detailed document as compare to test scenario.test scenario are not a detailed doc,its a simple doc to understand the check the functionality of an application AUT.
I also prefer test scenario rather than test cases.

#49 Kannan

It’s really superb article. I can easily understand the differences between the Test case & Test scenario.

#50 Venkat

Really nice article. It is very usefull to me. My confusion about Test case and Test Scenario cleared.. Thank u so much

#51 shaik basha

So informative, thanks for providing and please keep posting with some more information.

#52 Monica

Sorry but I just want to clear this in my head. Is it “full proof” or “fool-proof”? Thanks and more power.

#53 Urvang Dixit

I believe that knowledge is the most important thing to have in today’s world. I have been working as a software tester from last 15 months in an MNC in general insurance domain but still sometimes I think that I need to improve my software testing knowledge to cement my position in the company by increasing the dependency and this can be done only when I think I have reached to a position where my PM can find my work as work of an expert level tester. This can be achieved by testers like me after following this kind of immensely helpful blogs. I salute you @Bhumika Mehta# for sharing your knowledge. Kindly allow to ask few queries so that I can gain even more knowledge.

#54 bhavik

Hello sir,

Can please give some advice to how to create test plan with example. and load testing in iOS.

#55 Aparna

Hi , basically we are using following ay for testing any application .

1)Analyzing the Requirements
2)Participating in preparing Test Plans
3)Preparing Test Scenarios
4)Preparing Test Cases for module, integration and system testing
5)Executing the Test Cases
6)Defect Tracking
7)Giving mandatory information of a defect to developers in order to fix it
8)Preparing Summary Reports
9)Preparing Suggestion Documents to improve the quality of the application
10)Communication with the Test Lead / Test Manager

could u plz give me how to make exel sheet or point for testing for ponit no 3 ,6 and 7

#56 kumar

how much is u r package?

#57 Asif

Good article. I am a BA helping setting up testing in my company and had questions regarding Test Cases vs. Test Scenarios. From my vantage point, if time permits which it does in my situation, I see a merge of both in once document to show the “focus areas” and then “how to”. After reading the post, I will use multi-tab excel with the first one being the Scenario and the next tab to show Test Case. This is a rough idea that seems promising to me. I can imagine issues with organizing, updating, sorting, etc. due to features possibly existing in multiple overall scenarios. When QA starts getting up to speed then I’ll detach the two and have them list applicable Test Cases for each scenario.

But this is a good document and thank you for posting. I particularly like the grid that shows differences between Test Cases and Test Scenarios.

#58 Deepak Tripathi

@Bhumika Mehta – Can we easily use test scenarios in Regression testing ?

#59 Sonal

Yeah its right

#60 joy singh

is it necessary for a testing fresher to have a deep n working knowledge of automation? I have sound knowledge of manual testing. is it not enough to start career in testing as a fresher?

#61 sujatha

thank u for valuable information..

#62 Sagar

Hi..can anyone please send me some experience test cases email id- sagarmule47@gmail.com pls anyone

#63 Anand

@joy singh
You don’t need compulsorily knowledge of automation. It also depends upon the company requirement whether they are hiring for manual or automation.

#64 sindhu

Very nice article !!!

#65 John Ortiz

I believe that both test scenarios as test cases are closely related and are an essential part of a good test. The test scenarios are more oriented to business needs (from the point of view of the customer), the tester will give an overview of the purpose and the types of tests like it easier for the team members know the generalities of product. Test cases allow the tester to capture business needs (test scenario) test cases at a more detailed level allowing reuse.

#66 Abhishek Arora

Thanks for the sharing the information Bhumika mam. I am a fresher and i was looking for the same and you helped me a lot.
One request: Please share some useful notes to me at abhishek.arora22@gmail.com so that I can learn more.

Thanks

#67 mahesh

monotonic working means

#68 jacob

Hi,

Nice Sharing. I believe Test scenarios are more important than test cases. But as some one has mentioned, processes in a particular company may need test cases. I work in an MNC which is process oriented. We prepare test cases based on the acceptance criteria’s mentioned in the user story . But while testing we focus on more into scenarios. Thinking as a customer makes a QA great. Customers never follow the test cases prepared by QA for their work. The draw back of scenario based testing is next time when you do a regression testing you may not remember the scenario followed. In my case, if a particular scenario has found a very high or high defect, we automate the scenario so it wont get missed next time or in future.

Regards,
Jacob

#69 Sneha

Thank you so much for shearing your experience. I am also thinking of having the same approach at my work place, as Scenario testing is done by creating test scenarios which replicate the end users usage. in this way we can definitely track the defects which a end user may face.

#70 vignesh

I want 150 test scenarios of gmail

#71 Sunil Kumar

Hello Bhumika,
Thank you so much for great post, I really appreciate your description. Please keep share your ideas and thought.

#72 Arun

Hey Bhumika great one u jus wrote what my mind was thinking when i googled for this topic…. keep in touch arunonline47@gmail.com thanks

Leave a Comment