SMOKE TESTING - Smoke testing is to test the application if it quickly crash with the important functional feature in a quick testing cycle. We always perform this type of test before going for any regression test or to make sure if the application is in good health.
This type of testing is also called sanity testing and is done in order to check if the application is ready for further major testing and is working properly without failing up to least expected level. A test of new or repaired equipment by turning it on. If it smokes... guess what... it doesn't work! The term also refers to testing the basic functions of software. The term was originally coined in the manufacture of containers and pipes, where smoke was introduced to determine if there were any leaks. A common practice at Microsoft and some other shrink-wrap software companies is the "daily build and smoke test" process. Every file is compiled, linked, and combined into an executable program every day, and the program is then put through a "smoke test," a relatively simple check to see whether the product "smokes" when it runs.
A smoke test is a collection of written tests that are performed on a system prior to being accepted for further testing. This is also known as a build verification test. This is a "shallow and wide" approach to the application. The tester "touches" all areas of the application without getting too deep, looking for answers to basic questions like, "Can I launch the test item at all?", "Does it open to a window?", "Do the buttons on the window do things?". The purpose is to determine whether or not the application is so badly broken that testing functionality in a more detailed way is unnecessary. These written tests can either be performed manually or using an automated tool. When automated tools are used, the tests are often initiated by the same process that generates the build itself. This is sometimes referred to as "rattle" testing - as in "if I shake it does it rattle?"
In software testing, a smoke test is a collection of written tests that are performed on a system prior to being accepted for further testing. This is also known as a build verification test. This is a "shallow and wide" approach to the application. The tester "touches" all areas of the application without getting too deep, looking for answers to basic questions like, "Can I launch the test item at all?", "Does it open to a window?", "Do the buttons on the window do things?".
In the Software field this Smoke Testing is a very important testing aspect. I have often seem the case where both the words have been used interchangeably. I will focus on the Smoke Testing aspect in this article.
Smoke Testing is applicable when new components gets added and they are integrated with the existing code. It ensures that the build is not broken. The product in its existing state is smoke tested daily. It just ensures that the build is not broken and is ready for further thorough testing. Once an engineer certifies the smoke test is successful, the testing team can come into action for further deep testing.
Typical characteristics of Smoke Testing:
* It exercises the entire system from end-to-end.
* It is not exhaustive but should be capable of exposing major problems.
* It ensures that the major functionality is working and the build is stable enough for further testing thoroughly.
Advantages of Smoke Testing:
* Reduced Integration Risk : Since smoke testing is carried out the integration problems are uncovered at a much earlier stage than late in the cycle.
* Finds Major Problems: A good designed smoke test can increase the probability of finding a major problem when a software is built early in the cycle. Thus you catch bugs earlier in the cycle.
* Can save time and cost - If a major problem is detected at the stage when the software is ready built, it can save huge time and cost if the same error was discovered late in the cycle.
Smoke Testing
Today nothing is as critical as information. In order to fulfill your information need as an IT professional. TestingMantra is presenting
you all the technology related news at one place. So that you will be always aware of your shrouding...
To get the information and discuss around the world of testing and other aspects of software testing technology.