Home Contact

Software Test, QA & Support in the 2.0 World: The Collage of Devankur Thakur

"It ain't braggin' if you can do it."-Dizzy Dean, 1930's baseball player

News

Article Categories

Archives

Post Categories

Image Galleries

Blogs to Read..!

My Other Blog..!

Software Testing Related Links

Syndication:

SMOKE Vs SANITY

I have gathered a few points about the difference between smoke and sanity testing from the responses of two software testing groups. I have added the points below.

 

However, my experience of executing the Smoke and Sanity testing has been the following:

 

Smoke Test:

When a build is received, a smoke test is run to ascertain if the build is stable and it can be considered for further testing.

 

Smoke testing can be done for testing the stability of any interim build.

 

Smoke testing can be executed for platform qualification tests.

 

Sanity testing:

Once a new build is obtained with minor revisions, instead of doing a through regression, a sanity is performed so as to ascertain the build has indeed rectified the issues and no further issue has been introduced by the fixes.  Its generally a subset of regression testing and a group of test cases are executed that are related with the changes made to the app.

 

Generally, when multiple cycles of testing are executed, sanity testing may be done during the later cycles after through regression cycles.

 

 

 

Smoke

Sanity


1

Smoke testing originated in the hardware testing practice of turning on a new piece of hardware for the first time and considering it a success if it does not catch fire and smoke.  In software industry, smoke testing is a shallow and wide approach whereby all areas of the application without getting into too deep, is tested.

A sanity test is a narrow regression test that focuses on one or a few areas of functionality. Sanity testing is usually narrow and deep.

2

A smoke test is scripted--either using a written set of tests or an automated test

A sanity test is usually unscripted.

3

A Smoke test is designed to touch every part of the application in a cursory way. It's is shallow and wide.

A Sanity test is used to determine a small section of the application is still working after a minor change.

4

Smoke testing will be conducted to ensure whether the most crucial functions of a program work, but not bothering with finer details. (Such as build verification).

Sanity testing is a cursory testing; it is performed whenever a cursory testing is sufficient to prove the application is functioning according to specifications. This level of testing is a subset of regression testing.

5

Smoke testing is normal health check up to a build of an application before taking it to testing in depth.

 

sanity testing is to verify whether requirements are met or not,

checking all features breadth-first.

 

 

 

-Devankur

 

 

 

 

 

 

 


Feedback

# re: SMOKE Vs SANITY

One of Right definition in whole search/help site.

subset of regression testing ??

After regression testing there is no need of sanity testing
it is only done to avoid regression testing at the final stages
of Build received, it is assumed that build is working fine
just for tester satisfaction and short time available, going through whole build we follow those test cases only where
bugs were found in previous build, it is assumed that while fixing the bug the developer has not disturbed any other part of code/build. 9/7/2004 7:22 AM | nitendra kumar

# re: SMOKE Vs SANITY

Thanks for proper definition, I am including accordingly in my test plan.


9/7/2004 7:29 AM | Seetha J.

# re: SMOKE Vs SANITY

100% Perfect Differences.



9/7/2004 7:34 AM | Nitendra Kumar

# re: SMOKE Vs SANITY

Mr. Devankur,
Nitendra Kumar is also correct, sanity testing is not subset of regression testing its a next testing strategy, ofcourse defined by testers themselfs for there satisfaction, testers are always after deadline and they have to follow this stage instead of going for a regression testing again.

S. J. 9/7/2004 7:43 AM | Seetha J.

# re: SMOKE Vs SANITY

Hi Nitendra/Seetha,

Okay, I agree sanity is a different test strategy to Regression all together, but by "Subset" of regression testing, I meant generally the test cases that are executed for sanity are selected from Regression test cases only. As the test cases are derived from Regression (in most cases), its thus a subset of regression.

I second that sanity is done instead of a regression in general.

Thanks. 9/8/2004 6:39 AM | Devankur

# re: SMOKE Vs SANITY

Hello Mr. Devankur Thakur,
Good Morning,

Test cases for sanity are predefined, u can't say that u will not follow those test cases which r not yet executed in Regression testing.

Selection of test cases for Sanity can't be dependent on Regression testing, aim of Sanity is only to test whole module with minimum number of testcases and if we are aware of important portion of module where severity of bugs can be high we include those test cases also.

Regards,
Nitendra 9/8/2004 7:46 AM | Nitendra Kumar

# re: SMOKE Vs SANITY

Nitendra,

Yes, the test cases are always predefined and sanity is planned beforehand, am referring to slection of test cases here. Usually the test cases are derived from the already written test cases (my experience). Thus, sanity has no dependency to regression, but the test cases are generally same as regression, with they are only a choosen few affecting the areas/modules to be covered. But I dont rule out that separate test cases can also be written alltogether aiming sanity testing only. That depends on the practice and strategy.

Best Regards,
-Devankur 9/8/2004 8:16 AM | Devankur

# re: SMOKE Vs SANITY

Devankur/Nitendra,

Both of u r are arguing on same similar experiences,
ur words are same.
But generally we don't write separate test cases for any of the testing, its written once and for all, adding test cases is again new strategy of testing called TEST METRICS.

All the BEST to both of u,

With Love
Seetha J.
fr Chennai. 9/9/2004 5:07 AM | Seetha J.

# re: SMOKE Vs SANITY

smoke is done on build version and sanity is done on release version. do you agree friends? 10/9/2004 5:05 PM | Narayana reddy, DKDS Naidu

# re: SMOKE Vs SANITY

Can we say that smoke test is the preliminary testing step before the actual testing start? if yes then smoke test is a Light way of testing the software.

Thanks for the
Nice definition for smoke test and sanity testing. 10/26/2004 11:05 AM | Ali Anfal Mohammed

# Testing info

Hi all,

Can any anybody tell me
What is piolet testing ?

Thanks & Regards
Ramappa Nashi 11/9/2004 8:12 AM | Ramappa

# re: SMOKE Vs SANITY

Hi all,

It is always the B.A. involved for both smoke/sanity testing especially in a RUP based environment.

What if a tester is told out of blue to smoke an AUT without having no idea about the functionality of that AUT. In such cases what input documents should be available to him ??

Can any body give me an approach?

Appreciate your understanding,
Thanks,
Pranay D. 11/29/2004 4:11 PM | Pranay Dalal

# re: SMOKE Vs SANITY

Hi All,

The topic erases any doubts about sanity and smoke testing.

When it comes to Selection of test cases.It is always to pick from the existing testcases written(but updated as needed), which seem to be more appropriate for section of software to test. At times we will not need to run all the testcases written for the section.


Thanks & Regards
RaviReddy 12/7/2004 9:16 AM | Ravi Kumar Reddy N

# re: SMOKE Vs SANITY

Is there any diffrence between Functional and Sanity Testing?????????? 12/11/2004 10:15 AM | Narasimha Rao.P

# re: SMOKE Vs SANITY

As per my knowledge ,

Smoke is to test the Basic Functionality of the Application,i.e prior to Indeapth testing.

Sanity Testing is to ensure that the bugs which are found during the Previous build are resolved. 12/11/2004 9:22 AM | Narasimha Rao.P

# re: SMOKE Vs SANITY

Thanks for the
Nice definition for smoke test and sanity testing 12/13/2004 7:46 AM | Suman

# testcase vs test script

thanks for the clarification between smoke and sanity testing
3/5/2005 7:47 PM | madhu

# re: SMOKE Vs SANITY

Hi all,
Smoke testing is the first testing to be performed on the build before tester take it for further testing.
So it is done on build level n it is used to check the basic functionality of the product.

Sanity testing on the other hand is done at later stage. It is done at module level. Sanity is done to check the depth functionality of the product after modification.

So don't get confused with sanity n regression. 4/7/2005 9:03 AM | vikas kumar gupta

# re: SMOKE Vs SANITY

what are the points we consider in smoke testing..and what in sanity 4/16/2005 3:40 PM | suresh

# re: SMOKE Vs SANITY

Sanity testing u can do it if product is in development phase ,if software is in market n clients r using the software then u have to use smoke testing so that to reduce the risk analysis 4/22/2005 10:55 AM | Rahul

# re: SMOKE Vs SANITY

Hi
what are the points we consider in smoke testing..and what in sanity

Thanks
satyendra 4/22/2005 6:45 PM | satyendra

# re: SMOKE Vs SANITY

Hi
i think after regration testing no need sanity testing.
becacuse regration testing is compleate the all testing application. 4/22/2005 6:47 PM | satyendra

# re: SMOKE Vs SANITY

All of the people are not compromising about one defination.this is bad. 6/15/2005 2:22 PM | sridhar taduri

# re: SMOKE Vs SANITY

Smoke and Sanity are similar test which are done at two different stages and bith have same importance.
Smoke test is done while giving internal release to QC for fullfledge testing and sanity is done as part of regression testing at last stages at the time of Release to UAT 11/2/2005 6:51 AM | Kishore Malladi

# re: SMOKE Vs SANITY

Hi - Above discussion seems giving rich information. Let me also explain my knowledge.


Smoke Testing term has come from electronic industry. It is a rudimentary form of testing applied to electronic equipment following repair or reconfiguration, in which power is applied and the tester checks for sparks, smoke, or other dramatic signs of fundamental failure.
2. By extension, the first run of a piece of software after construction or a critical change.

People give different names to such testing activity in different industries. Sanity testing is the term used in Software which is very much similar to Smoke testing. after going through the above discussion and Smoke testing definition we can say

Smoke Testing - At build level when the software is just built and came for testing

Sanity Testing: At release level when software is ready to be shipped to client and QA just want to finally chekc if evthing is fine

Best Regards,
Piyush Sharma
11/24/2005 3:03 AM | Piyush Sharma - Pune

# re: SMOKE Vs SANITY

Smoke test is actually concept came from the Electronic industry.In the software Testing, Smoke testing is done by opening all the pages or modules for checking whether they are opening or not after build is installed.

Sanity is similar to the Smoke Testing but, in depth testing is done for the impact areas (Changes or modifications) in the New build 12/14/2005 7:09 AM | Preetham Boosnur

# re: SMOKE Vs SANITY

Hi Devankur,

Such a great defn. thankyou
have a lovely day! 1/24/2006 1:14 AM | Manivel Khanna R

# re: SMOKE Vs SANITY

Hi Devankur,

Please can you provide scenarios and examples of Smoke and Sanity testing.

Thanks and Regards,
Mangalmurti 2/8/2006 3:51 AM | Mangalmurti - Hyd

# re: SMOKE Vs SANITY

Hi devankur,
Can you please tekll me that if we conduct sanity testing as substitute to regression testing.we are keeping some space for bugs in software. 2/21/2006 9:50 AM | Abhijit -Mumbai

# data base test

How to test runtime database check point using winrunner.

If anybody can do favor by answering the querry , it would be great full to me 3/2/2006 7:50 AM | hemanth

# What r the six points of web testing?

Hi All,

Plz describe above Que......... 3/7/2006 5:30 AM | Prashant Singh

# re: SMOKE Vs SANITY

Sanity is a first level of testing when an application is given to QC(Testing) where they check first round functional testing then they go for ful fledge of testing.if they are not happy with sanity test ,will send back to development.
Smoke Test is done as last level of testing in QC(Testing) i.e. done at a time of release of an application.Thanks.... 3/18/2006 12:25 PM | Kishore Malladi

# re: SMOKE Vs SANITY

Can anyone provide me a correct definition of stress testing.................? 3/18/2006 12:28 PM | Malladi

# re: SMOKE Vs SANITY

Hi,
Thanks for explaining. I understood somewhat both, but still not clear. That is confusion about on what basis we have to make choice them i.e. When to use what?. Is there any dependancy between them? By observing above I found that everyone explained by their view. That's ok.
Could sombody explain both of testing types (and regression also) with short example so that everyone get the clear view.

Regards
Pravin.

3/21/2006 3:59 AM | Pravin Savant- Pune

# SMOKE Vs SANITY

Are they Similar or Different ? Then What is Compliance Testing, Mutation Testing And Localization Testing ? 3/28/2006 3:22 PM | Rupayan

# re: SMOKE Vs SANITY

Hi
I am extremely glad to get the differences between the both.I have been looking out for the differences for a long time,finally I have got the required answer.

Thank you
Daly 4/11/2006 3:53 AM | Daly Sunil

# re: SMOKE Vs SANITY

may i know the difference between compatibility and configuration testing?
4/24/2006 5:44 AM | sadiq

# re: SMOKE Vs SANITY

Hi Piyush,

Yes you are absolutely right. Smoke testing shoud be done in initial stages of build, but it should be formal. I mean test cases for conducting smoke testing should be consistant, where as incase of sanity its happens at release stage with informal. Means, basic steps which ensure the major flow of the application. Focus should be at critical areas.

Thanks
Niranjan 4/30/2006 5:36 AM | Niranjan Veluru

# re: SMOKE Vs SANITY

thanx for giving such a valueble definition. 5/8/2006 3:47 AM | somesh chitta

# re: SMOKE Vs SANITY

Hi all,This has now became a lot confusion. 5/10/2006 3:35 AM | vikas

# re: SMOKE Vs SANITY

Vikas, I agree with you. This thread has indeed become confusing. As confusing as most of the concepts in the arena of software testing. Most of the definitions are tailored or doctored to suit individual or organisational needs. We still need a body to set de facto testing standards in the software industry. 5/10/2006 11:15 AM | Hemant

# re: SMOKE Vs SANITY

Difference between smoke and sanity testing:

Sanity testing refers to a set of tests that validate a build's stability, and the availability of major components of the product. The tests will be run on every build used by QA, are automated, and are generally run on a daily basis. Each major new feature defined within the project PRD must be represented by one or more test cases in the Sanity Test.

If a project is driven based on Pass I, Pass II and Pass III where Pass II will be called as comprehensive pass and Pass III will be called as Sanity Pass. In the Sanity (Final) Pass only the bugs got fixed after the comprehensive pass will be tested and a formal regression will be done with respect to the bug fix. Apart from this, testing would be performed on the major functionalities of the product to confirm that the final code has not broken any other functionalities which where working before.

AND

Smoke testing refers to a set of tests that validates basic functionality across a feature set. Often referred to as CRUD tests (Create, Read, Update and Delete), these tests are intended to validate most basic "go-paths" within the code. Smoke tests should cover core or legacy functionality as well new features for the project. Smoke tests are generally run following Sanity Tests and are more thorough in scope.
5/15/2006 1:54 AM | Kumar Nagireddi

# re: SMOKE Vs SANITY

hi
Smoke testing is done when our project is at build level to test only major functionality.

sanity testing is done when ur project at releasing level to test software after some changes to test if that has any effect on other component of software. It is part of regression testing. 5/25/2006 9:54 AM | vikram

# re: SMOKE Vs SANITY

thanks for definition for easy undersating words used 6/6/2006 3:24 PM | d.senthil kumaran

# re: SMOKE Vs SANITY

Hi Devankur,

Your Difference for SMOKE Vs SANITY is PERFECT. NO DOUBT. All points can clearly differentiate both the things. Nothing is missing in your difference.

Thanks for provinding such a nice information.


Thanks and Regards,
Atul Hendre 8/1/2006 8:42 AM | Atul Hendre

# re: SMOKE Vs SANITY

Smoke testing is cursory testing of the major functionalities of the program.whereas sanity testing is in depth testing module wise to ascertain that the module is fuctioning properly after resolving the bugs. 8/27/2006 4:52 AM | Sandeep Bhattacharya

# Bench mark and Baseline

what is the difference between bench mark and base line in the quality. 8/29/2006 9:55 AM | Sandhya Rani

# re: SMOKE Vs SANITY

Hello,

This one –

“Sanity testing is to verify whether requirements are met or not, checking all features breadth-first. ”

is true for smoke testing…right? Since sanity is “narrow and deep” it cannot happen “breadth-first” or “all”.

Also #4 says –

“Smoke testing will be conducted to ensure whether the most crucial functions of a program work, but not bothering with finer details”

if smoke testing is “shallow and wide”, how is this applicable for “most crucial functions”.

I might be wrong in my understanding. Please clarify further.

Indrajit Ghatak
Manager – Testing & Support
Web Spiders
http://www.webspiders.com
9/6/2006 5:44 PM | Indrajit Ghatak

# re: SMOKE Vs SANITY

Smoke test : It is a basic test (application stability) is to be conducted whenever a new build is received for testing. We can call it as build verification test. If it passes, then we go for further level of indepth testing.


Sanity Testing : This test is conducted at the final release of the software before delevered to the customet for UAT testing.This ensures that the flow of the application and major or critical functionality is working as expected. 9/22/2006 12:57 PM | Peter

# re: SMOKE Vs SANITY

hi!
i don know what r u all giving about sanity and smoke testing. see my views and comment on it.
smoke test: why? bcoz we have to test a bulid that should meet its basic functionalities specified on functinal specification document.let we have a new build for testing with 12 basic functionalities given on doc but when u start testing the sixth or any functionality given in doc is not supported or working then u can say smoke test failed otherwise ur build pass smoke and u can do further testing on it.eg. if y give user name and password to yahoo login and it do nothing but in ur FS doc it is mentioned that it will open next window or allow access withthat data than ur smoke test is fail and u have to send your build back.
Sanity: Where as sanity testing is a cursory testing means u have test whole build for once to show that its working as per give specification.we can say sanity is on pass testing. 9/24/2006 3:50 PM | rampy

# re: SMOKE Vs SANITY


(As per experience and knoledge so comments welcome)
Smoke testing:
Once the application biuld intially we go for smoke testing how the application behaves with different hadware settup (weather working in different environments).if the system crash happens while testing the smoke test test casaes then the smoke test fails else pass.

Sanity testing:
once the module finishes we going for sanity testing .i.e in deapth with all the functionalities.so here sanity testing will be regression testing but regression testing wont be sanity testing.

Note: sanity testing is nessasary to confirm the module build in right way. 10/13/2006 8:43 PM | Thanasingh

# re: SMOKE Vs SANITY

what leve of testing regression testimng can be applied 10/28/2006 4:36 AM | sangamesh

# re: SMOKE Vs SANITY

Benchmarking:
Comparing your company’s products, services, or processes against best
practices, or competitive practices, to help define superior performance of a
product, service, or support process.

Baseline:
A quantitative measure of the current level of performance.

Thanks and Regards
Kumar Nagireddi

11/14/2006 9:35 AM | Kumar Nagireddi

# re: SMOKE Vs SANITY

smoke testing is perform to check all functionality is working before testing the test case 12/6/2006 10:57 AM | ankur tyagi

# re: SMOKE Vs SANITY

can any body tell me difference b/w retesting and regression testing?
Mail id-
tyagi_anki@yahoo.co.in 12/6/2006 11:00 AM | ankur tyagi

# re: SMOKE Vs SANITY

When a build is received, a smoke test is run to ascertain if the build is stable and it can be considered for further testing.



Smoke testing can be done for testing the stability of any interim build.



Smoke testing can be executed for platform qualification tests

Once a new build is obtained with minor revisions, instead of doing a through regression, a sanity is performed so as to ascertain the build has indeed rectified the issues and no further issue has been introduced by the fixes. Its generally a subset of regression testing and a group of test cases are executed that are related with the changes made to the app.



Generally, when multiple cycles of testing are executed, sanity testing may be done during the later cycles after through regression cycles.



3/5/2007 12:14 PM | soubhagya

# re: SMOKE Vs SANITY

thanks for clarifying the differencebetween smoke and sanity testing..

while smoke testing is a build verification test to check the stability of the build and it is conducted when a build is released to the QC for testing, sanity testing is a part of the regression testing to check a or few functionality of the applicaton are functioning according to the requirements or not after bug fixing and it is conducted at the time of final release to the customer 4/29/2007 12:49 PM | swathi

# re: SMOKE Vs SANITY

Smoke Test:

When a build is received, a smoke test is run to ascertain if the build is stable and it can be considered for further testing.



Smoke testing can be done for testing the stability of any interim build.



Smoke testing can be executed for platform qualification tests.



Sanity testing:

Once a new build is obtained with minor revisions, instead of doing a through regression, a sanity is performed so as to ascertain the build has indeed rectified the issues and no further issue has been introduced by the fixes. Its generally a subset of regression testing and a group of test cases are executed that are related with the changes made to the app.



Generally, when multiple cycles of testing are executed, sanity testing may be done during the later cycles after through regression cycles.



5/9/2007 1:13 AM | sandeep patil

# re: SMOKE Vs SANITY

Smoke testing is also know as non-exhaustive testing. This originated in the fire-fighting industry as a test to see whether firemen could breathe in new equipment when there was a fire and smoke. 5/22/2007 3:33 PM | Turbografx

# re: SMOKE Vs SANITY

Sanity Test : Initial test for every build to test its basic functionality.
Smoke Testing : Testing done at the end of every module to test the functionality of the current build to older one. 5/27/2007 9:06 AM | sonali

# re: SMOKE Vs SANITY

Smoke Testing:

Testing done to ascertain that s/w build is stable prior to normal testing life cycle.

Eg. While testing an application, showstopper bug arises developers fix that & releases a new build of that application for testers to retest. So, testers normally will run a scenario ( called as health check scenario ) to check whether all intermediate components are working fine

Sanity Testing:

Testing done only after smoke testing. Its not an exhaustive testing. Its a regression testing done to ascertain specific task of a functionality in an application
5/30/2007 3:51 AM | Mohideen

# re: SMOKE Vs SANITY

Hi,
Smoke Testing:
Build is properly installed on one or more system for further testing.

Sanity Testing:
Testing of database connectivity with application, connectivity with server and open each module of the applicaiton for further testing. 6/25/2007 7:38 AM | Deep

# re: SMOKE Vs SANITY

Hi,

Smoke testing is conducted in positive perception and where as Sanity testing is conducted in negative perception.
6/29/2007 5:16 AM | Suresh

# re: SMOKE Vs SANITY

Now i understood abt smoke Vs Sanity....can any body tell me .. what is difference between exploratory and adhoc testing? 7/5/2007 5:28 AM | Suji

# re: SMOKE Vs SANITY

I thank you for explaining the basic concepts of sanity testing and smoke testing. I was facing problems at interviews.
my mailid is rajivlochanpanda@gmail.com. I am from Rajiv Panda 7/10/2007 9:33 AM | rajiv lochan panda

# Define Alpha Beta Testing with Eg

Plz. Define Alpha beta testing precise and in simple words 7/23/2007 3:20 AM | Pravin Kadam

# re: alpha / beta

Alpha testing is done basically at the developers site. Where in developers look over shoulders of the users to find out the problems faced by the users of the product.

Whereas beta testing is done at the customers end or the client end where the clients record all the problems faced by them and later send the copies to the developer of the product for rectification.
7/26/2007 1:14 AM | matt

# re: SMOKE Vs SANITY

Hi Every Body,

Smoke Testing can be done in view of Environment- whether the environment is stable after installing or running the new build on any environment for majar testing effort.

Once the build is working fine with the specified environment then we can say Smoke test is pass and we can go for further testing.

Sanity Testing can be done in view of application- Whether the build is stable with any environment and we will have an understanding of the flow of Build with major functionalities.

So both Testing are very similar and we can say these both are cousins.

Diffrent companies calls as Smoke or Sanity or BVT. But all are same.

Sobhan Jaliparthi. 7/27/2007 9:13 PM | Sobhan J

# re: SMOKE Vs SANITY

smoke: It covers the all major functionality of the application without bothering with the finer detail.
Sanity: If any buld is receive from the developement them we will check the build is stable for entire application as well as it will be ready for further testng. 7/30/2007 5:01 AM | Mudit

# Stress Testing

Hi All

I understad for the Stress means just to check the Peak value of the application .

that it 7/31/2007 4:19 AM | Lokesh Thakre

# re: SMOKE Vs SANITY

In the above where u explained smoke and sanity,there u explained smoke is the first level of testing then we do sanity

But in the feedback section it is explained like sanity is the first level of testing then we do smoke,

So all this is soo confusing...

PLZ explain whether smoke iis first level os sanity 8/7/2007 6:34 AM | Manisha bazaz

# re: SMOKE Vs SANITY

thank you 8/7/2007 10:57 AM | murugan.pm

# re: SMOKE Vs SANITY

Now i understood abt smoke Vs Sanity 8/9/2007 7:26 AM | Ashok

# re: SMOKE Vs SANITY

looks good and helpful.Thanks for taking time and presenting your points in-detailed. 8/14/2007 6:52 PM | Reddy

# re: SMOKE Vs SANITY

can u give me an example cleary to differenciate smoke and sanity testing. 8/21/2007 3:45 AM | shanthi

# re: SMOKE Vs SANITY

This is agreat piece of explanation. 8/22/2007 4:53 AM | Solomon

# re: SMOKE Vs SANITY

Thankz a lot

Very brief and to the point.
Good to understand and chewable too.
8/27/2007 4:16 AM | Prashant Tyagi

# re: SMOKE Vs SANITY

SomkeTesting:It is main Functionality oriented.
Build is properly installed on one or more system for further testing.

SanityTesting:It is Overall Functionality oriented.Weather intial ceck for covered all the functions or not 10/30/2007 7:57 AM | prabakaran jeyamtechnologies

# re: SMOKE Vs SANITY

Hi Devankur,
That was really very good information. 11/21/2007 3:44 AM | Niraj

# re: SMOKE Vs SANITY

Hi all,

can any body tell me the difference between functional testing and Coverage testing?

11/30/2007 5:37 AM | Yogini

# Functional testing & Coverage Testing

Hi all,

can any body tell me the difference between functional testing and Coverage testing? 11/30/2007 5:39 AM | Yogini

# re: SMOKE Vs SANITY

Can you pls tell me when to perform sanity testing ang when smoke?
becoz some of you are saying that smoke is release time testing and some are saying sanity is release time testing.
ths is creating a lot of confusion.
Regards
Vikas 12/12/2007 2:09 PM | vikas

# re: SMOKE Vs SANITY

can cany one please explain do we need to write seperate test cases for smoke and sanity testing? 12/26/2007 11:55 PM | Sathish M

# re: SMOKE Vs SANITY

very nice.thank you. 12/27/2007 1:49 AM | ramana

# re: SMOKE Vs SANITY

Hi friends,

Can anybody give an answer to my question -

Is Smoke and Sanity testing are same, there is not any difference inbetween these two?

Thanks and Regards
Ashwin 1/2/2008 6:15 AM | Ashwin

# re: SMOKE Vs SANITY

Hi
am read the differance in that am not clear pls give some examples.

Thanks
Thirumal.K 1/7/2008 5:40 AM | Thirumaal

# re: SMOKE Vs SANITY

Hi All,
Thanks to all of you for sharing so many views about SMOKE and SANITY testing terms.

Let me try to explain it in very Lehman terms here.

Conceptually Smoke testing and sanity testing both are same,but perceptionally these are different.

Smoke testing:
Smoke testing is conducted with negative perception,it is the testing in which all the major functionalities work fine or not is tested , to proceed for further overall testing. This is done for a new build.

Eg. You have a flight booking application to test. Here, the smoke tests can include the tests such as:

Are you able to go to the booking screen?
Are you able to search a flight?
Are you able to enter the flight information successfully?
Are you able to transact successfully?
Is the flight really booked or the application just shows the success message?

If these tests do not pass, meaning its not worth applying time and cost in testing further finer details and the build is sent back and reported as unstable.

Sanity testing:
This is also a test to check whether all the functionaliteis are available are not.But this testing is conducted with positive perception.
Sanity means, the quality or condition of being sane/healthy.
I do not deny the fact that it is a subset of regression. Also, these tests are executed before the application/build is actually released.

Please let me know in case of any confusions.

Regards,
Ankit Vaish 1/11/2008 7:30 AM | Ankit

# re: SMOKE Vs SANITY

Hi all

I think mr Ankit is absulately right.+ve perception and -ve perception are only difference between smoke and sanity testing, otherwise both are same

regards
Sunilkumar 1/13/2008 11:57 PM | Sunilkumar A H

# re: SMOKE Vs SANITY

Folks,
Lot of people are asking difference between Smoke and Sanity testing. And the more info you get, more confused are you becoming.

Let’s make it simple …

Difference between Smoke and Sanity –

Smoke testing is done to verify that the build (to be tested) is done properly. (The build is a new / updated version of software). The motive is to check that the application build is working fine and does not crash.

For example – say an application has following features – (say each feature has a page, so in this case there are 10 features; so its 10 pages)
Login, Logout, Enter info, delete info, update info, Change address, search records, retire records, print form, generate reports etc…

Here’s how you will Smoke Test it -
Check that each of the pages is displayed properly and there are no broken links between pages.
Check that the buttons on the pages are clickable (not disabled or hidden).
Check that you can traverse back and forth between pages.
Check that you can see the help section pages, legal and disclaimer section on the pages (outgoing links on the pages)
Check the look and feel of the pages (fonts and user text boxes displayed properly and no broken images or cluttered text or font scramble) – this is optional check unless you see something that is unreadable
Check that you are able to enter info into input boxes (no need to do any transactions; just check whether you are able to input text on the pages or not).

Note that you are not required to do any transactions in Smoke test. In other words you are not testing the functionality of the application but the application build itself.

Sanity Testing – is done to verify whether the new / updated build is functioning properly. (Note the difference – smoke checks the application build; sanity checks the build functionality at higher level.)

Take the above example again – say an application has following features –
Login, Logout, Enter info, delete info, update info, Change address, search records, retire records, print form, generate reports etc…

Here’s how you will Sanity Test it -
Check that the customer critical functionality is working by performing at least one transaction for each of the major features.

Your depth of sanity testing depends on the functionality of the application. Say there are 5 major features of that application. So you need to perform only one transaction for each of the feature (to verify that all the major features are working properly).

(Sanity test concentrates on testing major features. A feature is said to be major if it is accessed by customer frequently or daily and its working is important to the business. )

Now say the login, logout, enter info, delete info and generate records are the 5 main features on the application.

Sanity test -
Check that you are able to login
Check the you are able to logout
Check the you are able to enter the info and save record for new user.
Check that you are able to delete data of existing user.
Check that you can generate report for current date.

You don’t need to test rest of the features. Nor do you require to run other exhaustive test cases for each of these major features.

Note that you just have to check that the basic functioning of the major features is working. Don’t run end to end and multiple operation test cases in sanity.
Just ran the Basic test case for which that feature is designed.

Hope that now everyone has got clear understanding of Smoke and Sanity testing. And the Difference as Well.

Lets make it Simple…

Cheers,
Sameer K.

1/19/2008 9:13 AM | sameer kadam

# re: SMOKE Vs SANITY

Hi thanks

from just i clarified doubt about sanity and smoke testing difference. 1/29/2008 6:38 AM | Suresh

# re: SMOKE Vs SANITY


SANITY TESTING:

This is before testing. Application is stable or not, we want to write test cases for product whether development team released build is able to conduct complete testing or not ?

SMOKE TESTING:

After testing major & medium or critical functions are closed or not
1/31/2008 4:34 AM | Murthy.Y.N

# re: SMOKE Vs SANITY

1)Smoke testing:done by developers,To ensure thet build is ready for release to the testing team.


Sanity testing:Done by QA/testers,to ensure if it's stable enough to continue further testing.

2) A smoke test is scripted--either using a written set of tests or an automated test

A sanity test is usually unscripted.

3) A Smoke test is designed to touch every part of the application in a cursory way. It's is shallow and wide.

A Sanity test is used to determine a small section of the application is still working after a minor change.


2/4/2008 1:08 AM | Bibek Khatiwara

# re: SMOKE Vs SANITY

We will conduct Smoke Testing when you get a build from the developer; we will check whether all the major functionality is working fine. Also we will check the hardware is supporting and the database connection. In one sentence, we will check the environment for conduct testing.

During Sanity Testing we will check the Major functionality of the build/application. Not only the major functionality, we can check the medium ware functions also.
In one sentence, we will check whether the high level requirements are satisfied during this release or not.
2/13/2008 2:31 AM | Vindhya Sajay Menni

# re: SMOKE Vs SANITY

Hats Off to your definition along with the differentional points. it was indeed very useful for me 2/15/2008 12:08 AM | archana

# re: SMOKE Vs SANITY


Difference between smoke and sanity testing:

Smoke Testing:
It is an initial type of testing, once testing team gets a build, needs to do the BVT or Smoke Testing for verifying the major functional component of the build. This has to be done based on the requirement.

After that, the testing team would be executed the functional/Integration/System test cases.

Sanity testing:
It is also initial type of testing, once testing team gets a build, needs to do the sanity testing for verifying the Hardware/network discrepancies on that. This will ensure that build is functioning correctly according the business requirement without Hardware/Network Issues.

Ex: while user working on the build, every 5 minutes system gets restarted, the testing team would not proceed the further testing. This kind of issue will be found in the sanity testing


2/27/2008 3:32 AM | Latcham Appasamy

# re: SMOKE Vs SANITY


Difference between smoke and sanity testing:

Smoke Testing:
It is an initial type of testing, once testing team gets a build, needs to do the BVT or Smoke Testing for verifying the major functional component of the build. This has to be done based on the requirement.

After that, the testing team would be executed the functional/Integration/System test cases.

Sanity testing:
It is also initial type of testing, once testing team gets a build, needs to do the sanity testing for verifying the Hardware/network discrepancies on that. This will ensure that build is functioning correctly according the business requirement without Hardware/Network Issues.

Ex: while user working on the build, every 5 minutes system gets restarted, the testing team would not proceed the further testing. This kind of issue will be found in the sanity testing
2/27/2008 3:35 AM | Latcham Appasamy

# re: SMOKE Vs SANITY

Very fantastic way explain the difference of Sanity & Smoke Testing by sameer kadam & Latcham Appasamy 3/11/2008 5:51 AM | Pravin Fulzele, Mumbai

# re: SMOKE Vs SANITY

It is a good article. Thanks to all!! 3/17/2008 12:00 AM | Ravi

# re: SMOKE Vs SANITY

Pravin Fulzele If u dont know the difference please be patient,Dont send others hospital;and think twice before writing any article! 4/2/2008 8:19 AM | Deviltester

# re: SMOKE Vs SANITY

"PRAVIN FUZELE,DIRTY TESTER HAVING FAKE EXPERIENCE......IF YOU DO'NT KNOW EVEN BVT THEN HOW CAN U SAY THAT U R A TESTER ...IT'S A SAME FOR TESTING DEPARTMENT.,....JUST GO TO HELL.." 4/2/2008 8:24 AM | MEENA KUMARI,BANGLORE

# re: SMOKE Vs SANITY

"PRAVIN FUZELE,DIRTY TESTER HAVING FAKE EXPERIENCE......!
IF YOU DO'NT KNOW EVEN BVT THEN HOW CAN U SAY THAT U R A TESTER ...IT'S A SAME FOR TESTING COMMUNITY.,....JUST GO TO HELL.." 4/2/2008 8:27 AM | meena kumari,banglore

# re: SMOKE Vs SANITY

HEY PRAVIN.....Dont get confused....we all came to know that your are really a foolish person in this testing community...Stay away dfrom your job.
I m not scolding you but suggesting....i won't tolerate any person having soo much patient.....! 4/2/2008 8:31 AM | rajeswari,Delhi

# re: SMOKE Vs SANITY

PRAVIN ...COOL DUDE;

YOU know what do you mean by testing.....?

Better luck next time....

First
1) read
2)Understand
3)write
4)mug up
5)think TWICE
AND THEN ONLY DISCUSS.....okay 4/2/2008 8:36 AM | archana,mumbai

# re: SMOKE Vs SANITY

Nice Devankur ..
but these are so long defination

Sort and sweet defination for SANITY TESTING is :-

Sanity testing is the minimum no. of test cases required to be passed before testing any application :) 4/3/2008 2:48 AM | Kamlesh Shama

# Testing Methodologies

Objectives
Look at the various methodologies for testing software.
Learn about test-driven development.
Overview
There are numerous methodologies available for developing and testing software. The methodology you choose depends on factors such as the nature of project, the project schedule, and resource availability. Although most software development projects involve periodic testing, some methodologies focus on getting the input from testing early in the cycle rather than waiting for input when a working model of the system is ready. Those methodologies that require early test involvement have several advantages, but also involve tradeoffs in terms of project management, schedule, customer interaction, budget, and communication among team members. This chapter discusses how testing fits into the various software development life cycles and then discusses the test-driven development practice in detail.

The Configuration Management Application Block (CMAB) is used to illustrate concepts in this chapter. The requirements for the CMAB are as follows:

It provides the functionality to read and store configuration information transparently in persistent storage media. The storage media are the Microsoft® SQL Server™ database system, the registry, and XML files.
It provides a configurable option to store the information in encrypted form and in plain text using XML notation.
It can be used with desktop applications and with Web applications that are deployed in a Web farm.
It caches configuration information in memory to reduce cross-process communication such as reading from any persistent medium. This caching reduces the response time of the request for configuration information. The expiration and scavenging mechanism for the data cached in memory is similar to the cron algorithm in UNIX.
Software Development Methodologies and Testing
Various generic software development life cycle methodologies are available for executing software development projects. Although each methodology is designed for a specific purpose and has its own advantages and disadvantages, most methodologies divide the life cycle into phases and share tasks across these phases. This section briefly summarizes common methodologies used for software development and describes their relationship to testing.

Waterfall Model
The waterfall model is one of the earliest structured models for software development. It consists of the following sequential phases through which the development life cycle progresses:

System feasibility. In this phase, you consider the various aspects of the targeted business process, find out which aspects are worth incorporating into a system, and evaluate various approaches to building the required software.
Requirement analysis. In this phase, you capture software requirements in such a way that they can be translated into actual use cases for the system. The requirements can derive from use cases, performance goals, target deployment, and so on.
System design. In this phase, you identify the interacting components that make up the system. You define the exposed interfaces, the communication between the interfaces, key algorithms used, and the sequence of interaction. An architecture and design review is conducted at the end of this phase to ensure that the design conforms to the previously defined requirements.
Coding and unit testing. In this phase, you write code for the modules that make up the system. You also review the code and individually test the functionality of each module.
Integration and system testing. In this phase, you integrate all of the modules in the system and test them as a single system for all of the use cases, making sure that the modules meet the requirements.
4/18/2008 8:57 AM | prabakaran

# re: SMOKE Vs SANITY

This is really very good and imporatant article Thanks To All of You 4/21/2008 5:30 AM | Falguni

# re: SMOKE Vs SANITY

SMOKE TESTING versus SANITY TESTING:

I am a Test Manager and was recently preparing a document for new starters in my company.
When I came across this article I thought that I might share a few lines from my document with you, to ensure a clearer understanding of the differences.


 Smoke Testing
Smoke testing is usually done at a ‘build level’ to test its stability. It is also hence called as BVT (Build Verification Test).

It is usually done by the developers before the build is released or by the testers before accepting a build for further testing.

This is usually done via a set of test cases that are executed to make sure that all major functionality works and that there are no issues with either software or hardware and that testing can officially kick off. These test cases are usually documented


 Sanity Testing

Sanity testing is done at ‘release level’ when software is ready for UAT.

Sanity testing may sometimes be subset of regression testing where a group of test cases that are related to the changes made to the application (either due to defects fixes or change requests) are executed once again.
This is usually the case, when the software has not undergone a rigorous phase of testing cycles.

In cases where the software has undergone a rigorous testing phase, Sanity testing may be avoided or kept to a bare minimum where all or some of the major functionality is quickly checked to ensure that it is ready for release.

Test cases for Sanity testing do not need to be documented



5/13/2008 12:01 AM | Lata - Australia

# re: SMOKE Vs SANITY

Hi all,
offcourse I am 50% clear.but still wnt some clear clarification .can u give it 5/15/2008 2:02 AM | Anitha

# re: SMOKE Vs SANITY

Hi,
What u have written is clear. But still in some cofusion.Just now I started my career in testing.So I want it more clear. 5/15/2008 2:25 AM | Sanny

# re: SMOKE Vs SANITY

am very happy with your answers Lata
please give some more things in Testing 5/19/2008 5:22 AM | Ashwin

# re: SMOKE Vs SANITY

hey can anybody explain how to estimate testing time and man power? 5/21/2008 4:08 AM | kalyan

# re: SMOKE Vs SANITY


Hi Ashwin,

I am not sure as to where to start!!!

There is so much to it in terms of the theory aspect to testing, like the SDLC methodolgies,White box, balck box, Functional testing, Non Functional testing etc....

My document for my team was 74 slides of .ppt or roughly 50 pages of .doc.

My suggestipon to you would be to get free online books on testing, or probably to gather the topics that you want(maybe from the online book) and look up on Google.

Again, this is just the theory aspect..when it comes to putting this knowledge into practice, thats where the challenge is....you find it quite different!!!
But soon, one day down the line you will get there!! As someone once said "PRACTICE MAKES MAN PERFECT."

Good Luck Ashwin.

5/26/2008 12:04 AM | Lata - Australia

# re: SMOKE Vs SANITY

I m very clear on that sanity and smoke testing
thank u very much mr.Lata - Australia 6/1/2008 10:08 AM | latha

# re: SMOKE Vs SANITY

""""""Guys excuse me i think i found one of my very old friend in this blog so sending her message to contact her """"""

Hi seetha J

while going through this column i found your name

are you the same person were living in pammal annanagar SBI colony friend of prasana .if yes then about me

I am sundar was staying in pammal studied in MCC my email id is sundar_0305@hotmail.com

reply l


cheers
sundar
6/17/2008 6:44 AM | sundar from pammal

# re: SMOKE Vs SANITY

this discussion is creating confusion. can anyone give it in a properway.

Thanks,
Ayasha 9/22/2008 9:17 AM | ayasha

# re: SMOKE Vs SANITY

smoke testing: When Build is received to check for the basic features

Sanity Testing : If some minor discripencies are seen in the build during smoke, it is sent for a fresh build.
on receiving the fresh build sanity is to check for that smoke features that have come up with fixes 9/30/2008 8:08 AM | nagendrakumar

# re: SMOKE Vs SANITY

perfect difference 11/19/2008 9:57 PM | chetana

# re: SMOKE Vs SANITY

Sanity testing: We will check the complete functionality of the application.

Smoke Testing: We will check the basic functionality of the application. 2/4/2009 1:13 AM | Dipak Bidwai

# re: SMOKE Vs SANITY

Sanity testing: We will check the complete functionality of the application.

Smoke Testing: We will check the basic functionality of the application. 2/4/2009 1:15 AM | Dipak Bidwai Bangalore

# re: SMOKE Vs SANITY

Smoke Testing : After getting the build from development team, to check the stability of the build for further testing,i.e. smoke testing.

Sanity Testing : To conduct testing on build after some changes and checking the application once again,is Sanity testing
2/8/2009 7:32 PM | Rabi,Bangalore

# re: SMOKE Vs SANITY

This caching reduces the response time of the request for configuration information. The expiration and scavenging mechanism for the data cached in memory is similar to the cron algorithm in UNIX. 3/14/2009 2:52 AM | dll

# re: SMOKE Vs SANITY

Sanity:- We check the measure functionality is working and has no effect. Thus we can ensure major functionality is working. This may includes test cases from Regression.
Sanity testing should be performed in lesser time.
Main purpose is to ensure functionality working and includes positive test cases.
4/13/2009 12:59 AM | Mayur K, Pune

# re: SMOKE Vs SANITY

Please corrcet me if i am mistake
Smoke teting : Smoke testing is the first phase of testing and it will run once the bulid is prepared and Just to check weather the build is stable ans can go for further testing or not
Smoke testing can be performed for the bulid just released
Sanity testing : It will be performed when a new bulid is released,to check the major functionalities are working properly, and check because of this fix then other functionalites has not broeken and not introducing any other bugs.
It will be perforemed instead of regression testing to the particular bulid at deadline 4/16/2009 4:57 AM | Sandhya

# re: SMOKE Vs SANITY

Thank You Devankur for giving good definitions for smoke and sanity testing. 6/17/2009 8:15 AM | Ajay Bharadwaj

# re: SMOKE Vs SANITY

Hi,
There is no such basic difference between the "Smoke" and "Sanity" testing. But her i tried to make some differences.
Smoke Testing- 1. It's a informal testing. 2. We are doing the smoke testing to test the build stability, whether we can proceed further for testing or not. 3. Not testing the application so deeply. 4. Just giving the cursory look on the major functionality of the application.

Sanity Testing- 1. Once the build is pass in the smoke testing, then only we will go for sanity testing. 2. Here we are testing the application deeply as compared to smoke testing. 3. it's a formal testing. 4. Sometime when we are getting a patch build, then instead of doing regression testing, we will go for sanity testing. 6/26/2009 12:15 AM | Sunil Kumar Behera

Post a comment