SlideShare ist ein Scribd-Unternehmen logo
1 von 3
Downloaden Sie, um offline zu lesen
Smoke Testing – A Necessary Evil!
Smoke Testing – A Necessary Evil!

                 Introduction   Increase in competition and leaps in technology have forced companies to adopt innovative ap-
                                proaches to have an application which is 100% error free (well almost!). Having more features and
                                functionality may not necessarily translate into success for a product or application—what ultimately
                                counts is how stable the end user finds these features. This can be achieved by applying different types
                                of testing methods and one such type of testing is “Smoke Testing”.
                                Smoke testing is a good practice to ensuring that a build meets minimum quality requirements. It
                                instills confidence, develops a good understanding between development and testing team, provides
                                a structured approach and shortens the testing cycle while improving the overall quality of the build(s)
                                or release. The quality and functioning of the developed software is improved as functional, architec-
                                tural and component level design defects are found earlier.
                                A good test strategy includes smoke testing as one of the key activities and is often defined as accep-
                                tance criteria before a build is deployed for further detailed testing by a testing team.

 What Is Smoke Testing?         A smoke test is a series of test cases that are run prior to commencing with full-scale testing of an
                                application. Smoke testing is non-exhaustive testing, ascertaining that the most crucial functions of a
                                program work, but not bothering with finer details.
                                The idea is to test the high-level features of the application to ensure that the essential features work.
                                If they do not work, there is no need to continue testing details of the application, so the testing team
                                will refuse to do any additional testing until the smoke test suite passes. This puts pressure on the
                                development team to ensure that the testing team does not waste valuable testing time with code that
                                is not ready to be tested.
                                Once smoke tests are implemented as part of your software development life cycle, you will see
                                the overall quality of the product improve and the sensitivity to producing high quality software in-
                                creased.

    Smoke Tests - How to        To implement smoke tests, the testing team will develop a set of test cases that are run any time a new
             Implement          release is provided from the development team. These set of test cases are used to test the major func-
                                tional areas of the system. They are not nit-picky test cases that test low-level detail of the application;
                                they are higher level test cases that test overall functionality.
                                It will be more productive and efficient if the smoke test suite is automated or it can be a combination
                                of manual and automated testing.
                                To ensure quality awareness, the smoke test cases are publicized to the development team ahead of
                                time, so that they are aware of the quality expectations.

 Components of a Smoke          It is important to focus on the fact that smoke test suite is a “shallow and wide” approach to the test-
             Test Suite         ing. The test suite should comprise 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?”,
                                and “Do the buttons on the window perform actions as intended”? These written tests can either be
                                performed manually or using an automated tool.
                                One way to ensure that smoke test suite comprises of “shallow and wide” test cases is by focusing
                                on positive tests only. A positive test is used primarily, if not solely, to validate that a given system,




  www.mindlance.com
  testing@mindlance.com
Smoke Testing – A Necessary Evil!

                              function, operation, etc. works as designed when a user enters the right data, in the right place, at the
                              right time, clicks the right buttons, etc.
                              The smoke test suite should ideally include at least one test case for every feature or function of all
                              the modules. Smoke test suite need not be part of the regression test suite; this reduces or avoids the
                              redundancy or repeatability of the tests that do not add value during regression testing. Typical issues
                              uncovered by a good smoke test suite are:
                              „„ Initial environment setup or configuration issues

                              „„ Overall application stability issues

                              „„ Features those are not yet available or not functioning

  Responsible Parties for     Smoke testing is either done by developers before the build is released or by testers before accepting
         Smoke Testing        a build for further testing. In either case, it is important to define the roles and responsibilities at the
                              beginning of the project. If indeed the development has a detailed unit test suite, then generally the
                              smoke testing responsibility is shifted to testing team.

                    Summary   Typical Characteristics of Smoke Testing
                              „„ It exercises the entire system from end-to-end. Stress should be given to detect those errors
                                  which can stop the system from functioning further
                              „„ 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
                              " It minimizes integration risk. One of the greatest risks that a team project faces is that, when
                                 the different team members combine or “integrate” the code they have been working on sepa-
                                 rately, the resulting composite code does not work well. Depending on how late in the project the
                                 incompatibility is discovered, debugging might take longer than it would have if integration had
                                 occurred earlier, program interfaces might have to be changed, or major parts of the system might
                                 have to be redesigned and re-implemented. In extreme cases, integration errors have caused
                                 projects to be cancelled. The daily build and smoke test process keeps integration errors small
                                 and manageable, and it prevents runaway integration problems.
                              " It reduces the risk of low quality. Related to the risk of unsuccessful or problematic integra-
                                 tion is the risk of low quality. By minimally smoke-testing all the code daily, quality problems are
                                 prevented from taking control of the project. You bring the system to a known, good state, and
                                 then you keep it there. You simply don’t allow it to deteriorate to the point where time-consuming
                                 quality problems can occur.
                              " Uncover major problems. A good designed smoke test can increase the probability of finding
                                 a major problem when software is built early in the cycle. It also uncovers defects not related to
                                 coding but that arise because of wrong or incomplete setup or configuration; such as database,
                                 server, firewall, application parameters etc. Thus you catch defects earlier in the cycle.
                              " Save time and cost. If a major problem is detected at an earlier stage, it can save huge time
                                 and cost than if the same error was discovered late in the cycle.




  www.mindlance.com
  testing@mindlance.com

Weitere ähnliche Inhalte

Was ist angesagt?

Test Case Prioritization Techniques
Test Case Prioritization TechniquesTest Case Prioritization Techniques
Test Case Prioritization TechniquesKanoah
 
AfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionAfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionPeter Marshall
 
software testing aplikasi
software testing aplikasisoftware testing aplikasi
software testing aplikasicecep2502
 
Pairwise testing
Pairwise testingPairwise testing
Pairwise testingKanoah
 
Top Chrome Extensions for Software Testing
Top Chrome Extensions for Software TestingTop Chrome Extensions for Software Testing
Top Chrome Extensions for Software TestingKanoah
 
Regression testing complete guide
Regression testing complete guideRegression testing complete guide
Regression testing complete guideTestingXperts
 
Principles of Software testing
Principles of Software testingPrinciples of Software testing
Principles of Software testingMd Mamunur Rashid
 
Seven testing principles
Seven testing principlesSeven testing principles
Seven testing principlesVaibhav Dash
 
Software Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief OverviewSoftware Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief OverviewSoftheme
 
Purpose and-objectives-of-software-testing
Purpose and-objectives-of-software-testingPurpose and-objectives-of-software-testing
Purpose and-objectives-of-software-testingpooja deshmukh
 
Importance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your ProjectImportance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your ProjectSarah Elson
 
Test Environment Management
Test Environment ManagementTest Environment Management
Test Environment ManagementKanoah
 
Testing 3: Types Of Tests That May Be Required
Testing 3: Types Of Tests That May Be RequiredTesting 3: Types Of Tests That May Be Required
Testing 3: Types Of Tests That May Be RequiredArleneAndrews2
 
Top 15 Interview Questions for Manual Testers
Top 15 Interview Questions for Manual TestersTop 15 Interview Questions for Manual Testers
Top 15 Interview Questions for Manual TestersSarah Elson
 
Types of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and AdvantagesTypes of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and AdvantagesSimform
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-conceptsmedsherb
 

Was ist angesagt? (20)

Test Case Prioritization Techniques
Test Case Prioritization TechniquesTest Case Prioritization Techniques
Test Case Prioritization Techniques
 
AfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionAfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing Introduction
 
software testing aplikasi
software testing aplikasisoftware testing aplikasi
software testing aplikasi
 
Pairwise testing
Pairwise testingPairwise testing
Pairwise testing
 
Top Chrome Extensions for Software Testing
Top Chrome Extensions for Software TestingTop Chrome Extensions for Software Testing
Top Chrome Extensions for Software Testing
 
Regression testing complete guide
Regression testing complete guideRegression testing complete guide
Regression testing complete guide
 
Principles of Software testing
Principles of Software testingPrinciples of Software testing
Principles of Software testing
 
Principles of software testing
Principles of software testingPrinciples of software testing
Principles of software testing
 
Manual testing
Manual testingManual testing
Manual testing
 
Seven testing principles
Seven testing principlesSeven testing principles
Seven testing principles
 
Software Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief OverviewSoftware Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief Overview
 
Purpose and-objectives-of-software-testing
Purpose and-objectives-of-software-testingPurpose and-objectives-of-software-testing
Purpose and-objectives-of-software-testing
 
Importance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your ProjectImportance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your Project
 
Software testing
Software testingSoftware testing
Software testing
 
Test Environment Management
Test Environment ManagementTest Environment Management
Test Environment Management
 
Testing 3: Types Of Tests That May Be Required
Testing 3: Types Of Tests That May Be RequiredTesting 3: Types Of Tests That May Be Required
Testing 3: Types Of Tests That May Be Required
 
Top 15 Interview Questions for Manual Testers
Top 15 Interview Questions for Manual TestersTop 15 Interview Questions for Manual Testers
Top 15 Interview Questions for Manual Testers
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Types of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and AdvantagesTypes of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and Advantages
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-concepts
 

Andere mochten auch

Flowtown case study for #sllconf
Flowtown case study for #sllconf Flowtown case study for #sllconf
Flowtown case study for #sllconf Eric Ries
 
Testing types (simple)1
Testing types (simple)1Testing types (simple)1
Testing types (simple)1Nataly Chill
 
Test Driven Development
Test Driven Development Test Driven Development
Test Driven Development Nezir Yürekli
 
Activity Diagram
Activity DiagramActivity Diagram
Activity DiagramAshesh R
 

Andere mochten auch (7)

Flowtown case study for #sllconf
Flowtown case study for #sllconf Flowtown case study for #sllconf
Flowtown case study for #sllconf
 
Testing types (simple)1
Testing types (simple)1Testing types (simple)1
Testing types (simple)1
 
Smoke testing with Go
Smoke testing with GoSmoke testing with Go
Smoke testing with Go
 
Test Driven Development
Test Driven Development Test Driven Development
Test Driven Development
 
How to Run a Smoke Test
How to Run a Smoke TestHow to Run a Smoke Test
How to Run a Smoke Test
 
Smoke Testing: Test Your App or Website
Smoke Testing: Test Your App or WebsiteSmoke Testing: Test Your App or Website
Smoke Testing: Test Your App or Website
 
Activity Diagram
Activity DiagramActivity Diagram
Activity Diagram
 

Ähnlich wie Smoke testing a_necessary_evil!

What is-smoke-testing ?
What is-smoke-testing ?What is-smoke-testing ?
What is-smoke-testing ?Ajit Waje
 
Software Testing Principles
Software Testing PrinciplesSoftware Testing Principles
Software Testing PrinciplesKanoah
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWJournal For Research
 
Top 10 Practices for Software Testing in 2023.pptx
Top 10 Practices for Software Testing in 2023.pptxTop 10 Practices for Software Testing in 2023.pptx
Top 10 Practices for Software Testing in 2023.pptxOprim Solutions
 
Sanity Testing Vs. Smoke Testing: All You Need to Know!
Sanity Testing Vs. Smoke Testing: All You Need to Know!Sanity Testing Vs. Smoke Testing: All You Need to Know!
Sanity Testing Vs. Smoke Testing: All You Need to Know!Sterling Technolabs
 
Implementing a testing strategy
Implementing a testing strategyImplementing a testing strategy
Implementing a testing strategyDaniel Giraldo
 
Introduction to Smoke Testing.pdf
Introduction to Smoke Testing.pdfIntroduction to Smoke Testing.pdf
Introduction to Smoke Testing.pdfShubhamSingh717776
 
WEEK 2 SOFTWARE TESTING TRAINING MANUAL _TYPES OF TESTING FINAL.pptx
WEEK 2 SOFTWARE TESTING TRAINING MANUAL  _TYPES OF TESTING FINAL.pptxWEEK 2 SOFTWARE TESTING TRAINING MANUAL  _TYPES OF TESTING FINAL.pptx
WEEK 2 SOFTWARE TESTING TRAINING MANUAL _TYPES OF TESTING FINAL.pptxFinancial Services Innovators
 
Software testing
Software testingSoftware testing
Software testingAshu Bansal
 
Chapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptChapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptVijayaPratapReddyM
 

Ähnlich wie Smoke testing a_necessary_evil! (20)

What is-smoke-testing ?
What is-smoke-testing ?What is-smoke-testing ?
What is-smoke-testing ?
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software Testing Principles
Software Testing PrinciplesSoftware Testing Principles
Software Testing Principles
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEW
 
Testing
Testing Testing
Testing
 
Top 10 Practices for Software Testing in 2023.pptx
Top 10 Practices for Software Testing in 2023.pptxTop 10 Practices for Software Testing in 2023.pptx
Top 10 Practices for Software Testing in 2023.pptx
 
Sanity Testing Vs. Smoke Testing: All You Need to Know!
Sanity Testing Vs. Smoke Testing: All You Need to Know!Sanity Testing Vs. Smoke Testing: All You Need to Know!
Sanity Testing Vs. Smoke Testing: All You Need to Know!
 
Implementing a testing strategy
Implementing a testing strategyImplementing a testing strategy
Implementing a testing strategy
 
Introduction to Smoke Testing.pdf
Introduction to Smoke Testing.pdfIntroduction to Smoke Testing.pdf
Introduction to Smoke Testing.pdf
 
programming testing.pdf
programming testing.pdfprogramming testing.pdf
programming testing.pdf
 
programming testing.pdf
programming testing.pdfprogramming testing.pdf
programming testing.pdf
 
programming testing.pdf
programming testing.pdfprogramming testing.pdf
programming testing.pdf
 
TDD Presentation
TDD PresentationTDD Presentation
TDD Presentation
 
Software unit4
Software unit4Software unit4
Software unit4
 
WEEK 2 SOFTWARE TESTING TRAINING MANUAL _TYPES OF TESTING FINAL.pptx
WEEK 2 SOFTWARE TESTING TRAINING MANUAL  _TYPES OF TESTING FINAL.pptxWEEK 2 SOFTWARE TESTING TRAINING MANUAL  _TYPES OF TESTING FINAL.pptx
WEEK 2 SOFTWARE TESTING TRAINING MANUAL _TYPES OF TESTING FINAL.pptx
 
Software testing
Software testingSoftware testing
Software testing
 
Chapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptChapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.ppt
 
Why is software testing important
Why is software testing important Why is software testing important
Why is software testing important
 
Why is software testing important
Why is software testing importantWhy is software testing important
Why is software testing important
 
08 fse verification
08 fse verification08 fse verification
08 fse verification
 

Kürzlich hochgeladen

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Kürzlich hochgeladen (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Smoke testing a_necessary_evil!

  • 1. Smoke Testing – A Necessary Evil!
  • 2. Smoke Testing – A Necessary Evil! Introduction Increase in competition and leaps in technology have forced companies to adopt innovative ap- proaches to have an application which is 100% error free (well almost!). Having more features and functionality may not necessarily translate into success for a product or application—what ultimately counts is how stable the end user finds these features. This can be achieved by applying different types of testing methods and one such type of testing is “Smoke Testing”. Smoke testing is a good practice to ensuring that a build meets minimum quality requirements. It instills confidence, develops a good understanding between development and testing team, provides a structured approach and shortens the testing cycle while improving the overall quality of the build(s) or release. The quality and functioning of the developed software is improved as functional, architec- tural and component level design defects are found earlier. A good test strategy includes smoke testing as one of the key activities and is often defined as accep- tance criteria before a build is deployed for further detailed testing by a testing team. What Is Smoke Testing? A smoke test is a series of test cases that are run prior to commencing with full-scale testing of an application. Smoke testing is non-exhaustive testing, ascertaining that the most crucial functions of a program work, but not bothering with finer details. The idea is to test the high-level features of the application to ensure that the essential features work. If they do not work, there is no need to continue testing details of the application, so the testing team will refuse to do any additional testing until the smoke test suite passes. This puts pressure on the development team to ensure that the testing team does not waste valuable testing time with code that is not ready to be tested. Once smoke tests are implemented as part of your software development life cycle, you will see the overall quality of the product improve and the sensitivity to producing high quality software in- creased. Smoke Tests - How to To implement smoke tests, the testing team will develop a set of test cases that are run any time a new Implement release is provided from the development team. These set of test cases are used to test the major func- tional areas of the system. They are not nit-picky test cases that test low-level detail of the application; they are higher level test cases that test overall functionality. It will be more productive and efficient if the smoke test suite is automated or it can be a combination of manual and automated testing. To ensure quality awareness, the smoke test cases are publicized to the development team ahead of time, so that they are aware of the quality expectations. Components of a Smoke It is important to focus on the fact that smoke test suite is a “shallow and wide” approach to the test- Test Suite ing. The test suite should comprise 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?”, and “Do the buttons on the window perform actions as intended”? These written tests can either be performed manually or using an automated tool. One way to ensure that smoke test suite comprises of “shallow and wide” test cases is by focusing on positive tests only. A positive test is used primarily, if not solely, to validate that a given system, www.mindlance.com testing@mindlance.com
  • 3. Smoke Testing – A Necessary Evil! function, operation, etc. works as designed when a user enters the right data, in the right place, at the right time, clicks the right buttons, etc. The smoke test suite should ideally include at least one test case for every feature or function of all the modules. Smoke test suite need not be part of the regression test suite; this reduces or avoids the redundancy or repeatability of the tests that do not add value during regression testing. Typical issues uncovered by a good smoke test suite are: „„ Initial environment setup or configuration issues „„ Overall application stability issues „„ Features those are not yet available or not functioning Responsible Parties for Smoke testing is either done by developers before the build is released or by testers before accepting Smoke Testing a build for further testing. In either case, it is important to define the roles and responsibilities at the beginning of the project. If indeed the development has a detailed unit test suite, then generally the smoke testing responsibility is shifted to testing team. Summary Typical Characteristics of Smoke Testing „„ It exercises the entire system from end-to-end. Stress should be given to detect those errors which can stop the system from functioning further „„ 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 " It minimizes integration risk. One of the greatest risks that a team project faces is that, when the different team members combine or “integrate” the code they have been working on sepa- rately, the resulting composite code does not work well. Depending on how late in the project the incompatibility is discovered, debugging might take longer than it would have if integration had occurred earlier, program interfaces might have to be changed, or major parts of the system might have to be redesigned and re-implemented. In extreme cases, integration errors have caused projects to be cancelled. The daily build and smoke test process keeps integration errors small and manageable, and it prevents runaway integration problems. " It reduces the risk of low quality. Related to the risk of unsuccessful or problematic integra- tion is the risk of low quality. By minimally smoke-testing all the code daily, quality problems are prevented from taking control of the project. You bring the system to a known, good state, and then you keep it there. You simply don’t allow it to deteriorate to the point where time-consuming quality problems can occur. " Uncover major problems. A good designed smoke test can increase the probability of finding a major problem when software is built early in the cycle. It also uncovers defects not related to coding but that arise because of wrong or incomplete setup or configuration; such as database, server, firewall, application parameters etc. Thus you catch defects earlier in the cycle. " Save time and cost. If a major problem is detected at an earlier stage, it can save huge time and cost than if the same error was discovered late in the cycle. www.mindlance.com testing@mindlance.com