SlideShare ist ein Scribd-Unternehmen logo
1 von 10
Impact of Production Bug/s and
How to avoid it
03-Apr-2021
Agenda
• Why should be even care?
• Impact of Production Bug
• How to Reduce Bug
• TDD
• PLUGINs
• Few points need to be followed by QA
Why should I even care?
• Bugs happen all the time – and they will be found in pre-
production or in production.
• But the main difference between preventing and finding
the bug in a pre-production environment is the cost.
• According to IBM’s research, fixing a bug in production
can cost X5 times more than discovering it in pre-
production environments (during the design, local
development, or test phase).
Impact of Production Bug
A customer finds the
bug and alerts
customer service.
The bug is logged by
the production team.
The developer gets the description
of the bug, opens the spec, and
spends time reading it over.
The developer then will
spend time recreating the
bug.
The developer must then
reacquaint him/herself with
the code to debug it.
Next, the fix
must undergo
tests.
The fix is then
built and
deployed in
other
environments.
Finally, the fix
goes through
QA testing
(requiring QA
resources).
How to reduce bug?
• Design well. Keep it simple - Create the design before coding: try to divide difficult problems into smaller parts/steps/modules that we
can tackle one by one, thinking of objects with well-defined responsibilities.
• Create Testable Code - Make sure you see your test fail at least once. This is the key concept of test-driven development(TDD).
• KISS (Keep it simple and Straight-forward) - Complex code is destined to lead to bugs, and it is also much more challenging to test.
• DRY(Don’t Repeat Your Self) – Check some other forks may already written for you or check if it could be done by existing library. Create
Independent method or class.
• Use code analysis tools - It help to ensure and maintain the quality of our code.
• Don’t Use Comments as a Band-Aid - Keep your code comments as clear and concise as possible. Instead of it use semantic name
for method and variable...
Continue…
• Take Compiler Warnings Into Account - By keeping an eye on these warnings, you can ensure that potential problems are stopped
before they become critical issues.
• Take Your Time - If team works under intense pressure to release code by unrealistic deadlines, it are more likely to make mistakes.
Rushing for a release and cutting corners could create larger issues for the application in long time. So, take your time to ensure that best
practices are put in place
• Implement Coding Standards
• Refactoring - Refactoring aims to improve and redesign the structure of already existing code, without modifying its fundamental
behavior. Simple examples of refactoring include fixing improperly names variables or methods and reducing repeated code down to a
single method or function.
• Run functional tests - Typically, this is not done at the development level. Test cases are written based on the specification, and the
actual results are compared with the expected results. Using Selenium and Protractor for UI testing and Junit for API testing.
• Release gradually - Test new features on a small set of users before releasing to everyone.
TDD(Test Driven Development)
TDD will make us automatically think in smaller pieces of code (functions, components, services, directives, whatever we can
imagine), Will make us think about well scoped responsibilities, will make us to take design decisions otherwise we may be ignoring.
• The Steps : -
• Write a single unit test to verify that some criteria is met.
• Run the failing test (non compiling code counts as a failing test).
• Write just enough code so that the test passes.
• Refactor the code making sure that the test still passes.
• Start again, incrementally testing and developing your application
PLUGINs in VS Code for Angular
• Angular Language Service - This extension provides a rich editing experience for Angular templates.
• Bracket Pair Colorizer - This extension allows matching brackets to be identified with colors.
• Move TS - you can simply move files/folders around and this extension will automatically update your import statements.
• Tslint
• Code Spell Checker - Code Spell Checker is a spell checker that considers camelCase code.
PLUGINs in Eclipse/IntelliJ
• SonarLint - SonarLint is an IDE extension that helps you detect and fix quality issues as you write code in Java, JavaScript, PHP, Python
and HTML.
• Spring Tools (Spring Tool Suite (STS)) - This plugin makes it really easy to create Spring and Spring Boot projects in Eclipse. By
using the STS plugin, you can create Spring Boot projects quickly using easy to use start.spring.io integration.
• FindBugs - FindBugs is a defect detection tool for Java that uses static analysis to look for more than 200 bug patterns, such as null pointer
dereferences, infinite recursive loops, bad uses of the Java libraries and deadlocks.
• Rainbow Brackets
Few points need to be followed by QA to avoid bug leakage
• QA Manager/Lead's/BA’s should actively participate, discuss and bring out scenarios that happens in live environment.
• Make sure that test case should covers every modules of your software.
• Proper review of test cases from the lead and monitoring the test execution cycle.
• Change in hands means if in any build cycle Engineer A executing then in another cycle allot to another QA engineer.
• Perform ad hoc test on the product.
• Always strive to have comparable data to a production environment

Weitere ähnliche Inhalte

Was ist angesagt?

Quality Assurance Guidelines
Quality Assurance GuidelinesQuality Assurance Guidelines
Quality Assurance GuidelinesTim Stribos
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven DevelopmentZendCon
 
Elements of a Test Framework
Elements of a Test FrameworkElements of a Test Framework
Elements of a Test FrameworkSmartBear
 
Documenting code yapceu2016
Documenting code yapceu2016Documenting code yapceu2016
Documenting code yapceu2016Søren Lund
 
Software Testing, Everyone's responsibility
Software Testing, Everyone's responsibilitySoftware Testing, Everyone's responsibility
Software Testing, Everyone's responsibilityKurt Bliefernich
 
Unit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and MoqUnit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and MoqXPDays
 
Testing automation in agile environment
Testing automation in agile environmentTesting automation in agile environment
Testing automation in agile environmentPerfecto Mobile
 
How to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltHow to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltBrett Tramposh
 
Continuous Automated Regression Testing to the Rescue
Continuous Automated Regression Testing to the RescueContinuous Automated Regression Testing to the Rescue
Continuous Automated Regression Testing to the RescueTechWell
 
Functional & Performance Test Automation with CI
Functional & Performance Test Automation with CI Functional & Performance Test Automation with CI
Functional & Performance Test Automation with CI Leonard Fingerman
 
Common Java problems when developing with Android
Common Java problems when developing with AndroidCommon Java problems when developing with Android
Common Java problems when developing with AndroidStephen Gilmore
 
Orientation Program on Automated Software testing Powered by Infaum Education...
Orientation Program on Automated Software testing Powered by Infaum Education...Orientation Program on Automated Software testing Powered by Infaum Education...
Orientation Program on Automated Software testing Powered by Infaum Education...Anju ML
 
Test automation in agile ecosystem
Test automation in agile ecosystemTest automation in agile ecosystem
Test automation in agile ecosystemJohnRizer
 
Software testing tools (free and open source)
Software testing tools (free and open source)Software testing tools (free and open source)
Software testing tools (free and open source)Wael Mansour
 
Win at life with unit testing
Win at life with unit testingWin at life with unit testing
Win at life with unit testingmarkstory
 
TDD in the ABAP world - sitNL 2013 edition
TDD in the ABAP world - sitNL 2013 editionTDD in the ABAP world - sitNL 2013 edition
TDD in the ABAP world - sitNL 2013 editionHendrik Neumann
 

Was ist angesagt? (20)

Quality Assurance Guidelines
Quality Assurance GuidelinesQuality Assurance Guidelines
Quality Assurance Guidelines
 
Presentation_TDD
Presentation_TDDPresentation_TDD
Presentation_TDD
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Elements of a Test Framework
Elements of a Test FrameworkElements of a Test Framework
Elements of a Test Framework
 
Documenting code yapceu2016
Documenting code yapceu2016Documenting code yapceu2016
Documenting code yapceu2016
 
Agile test practices
Agile test practicesAgile test practices
Agile test practices
 
Software Testing, Everyone's responsibility
Software Testing, Everyone's responsibilitySoftware Testing, Everyone's responsibility
Software Testing, Everyone's responsibility
 
Unit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and MoqUnit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and Moq
 
Testing automation in agile environment
Testing automation in agile environmentTesting automation in agile environment
Testing automation in agile environment
 
How to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltHow to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance Toolbelt
 
Continuous Automated Regression Testing to the Rescue
Continuous Automated Regression Testing to the RescueContinuous Automated Regression Testing to the Rescue
Continuous Automated Regression Testing to the Rescue
 
Functional & Performance Test Automation with CI
Functional & Performance Test Automation with CI Functional & Performance Test Automation with CI
Functional & Performance Test Automation with CI
 
Common Java problems when developing with Android
Common Java problems when developing with AndroidCommon Java problems when developing with Android
Common Java problems when developing with Android
 
Orientation Program on Automated Software testing Powered by Infaum Education...
Orientation Program on Automated Software testing Powered by Infaum Education...Orientation Program on Automated Software testing Powered by Infaum Education...
Orientation Program on Automated Software testing Powered by Infaum Education...
 
Test automation in agile ecosystem
Test automation in agile ecosystemTest automation in agile ecosystem
Test automation in agile ecosystem
 
Tdd
TddTdd
Tdd
 
Chapter17 of clean code
Chapter17 of clean codeChapter17 of clean code
Chapter17 of clean code
 
Software testing tools (free and open source)
Software testing tools (free and open source)Software testing tools (free and open source)
Software testing tools (free and open source)
 
Win at life with unit testing
Win at life with unit testingWin at life with unit testing
Win at life with unit testing
 
TDD in the ABAP world - sitNL 2013 edition
TDD in the ABAP world - sitNL 2013 editionTDD in the ABAP world - sitNL 2013 edition
TDD in the ABAP world - sitNL 2013 edition
 

Ähnlich wie Topic production code

Introduction to-automated-testing
Introduction to-automated-testingIntroduction to-automated-testing
Introduction to-automated-testingBestBrains
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
Test-Driven-Development.pptx
Test-Driven-Development.pptxTest-Driven-Development.pptx
Test-Driven-Development.pptxdheeraj438799
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5hemasubbu08
 
TDD and Related Techniques for Non Developers (2012)
TDD and Related Techniques for Non Developers (2012)TDD and Related Techniques for Non Developers (2012)
TDD and Related Techniques for Non Developers (2012)Peter Kofler
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013David Funaro
 
Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for youAmbientia
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Developmentnikhil sreeni
 
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinDev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinMatt Tesauro
 
Java Code Quality Tools
Java Code Quality ToolsJava Code Quality Tools
Java Code Quality ToolsAnju ML
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software TestingMohammed Moishin
 
10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware Programming10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware ProgrammingPostSharp Technologies
 
Test driven development
Test driven developmentTest driven development
Test driven developmentHarry Potter
 
Test driven development
Test driven developmentTest driven development
Test driven developmentLuis Goldster
 
Test driven development
Test driven developmentTest driven development
Test driven developmentTony Nguyen
 

Ähnlich wie Topic production code (20)

Introduction to-automated-testing
Introduction to-automated-testingIntroduction to-automated-testing
Introduction to-automated-testing
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Lecture 21
Lecture 21Lecture 21
Lecture 21
 
Software testing
Software testingSoftware testing
Software testing
 
Agile Testing - What is it?
Agile Testing - What is it?Agile Testing - What is it?
Agile Testing - What is it?
 
Agile Testing
Agile Testing  Agile Testing
Agile Testing
 
Test-Driven-Development.pptx
Test-Driven-Development.pptxTest-Driven-Development.pptx
Test-Driven-Development.pptx
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
 
TDD and Related Techniques for Non Developers (2012)
TDD and Related Techniques for Non Developers (2012)TDD and Related Techniques for Non Developers (2012)
TDD and Related Techniques for Non Developers (2012)
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013
 
Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for you
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinDev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
 
Java Code Quality Tools
Java Code Quality ToolsJava Code Quality Tools
Java Code Quality Tools
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
 
Agile
AgileAgile
Agile
 
10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware Programming10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware Programming
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Test driven development
Test driven developmentTest driven development
Test driven development
 

Mehr von Kavi Kumar

Hospital Management System
Hospital Management SystemHospital Management System
Hospital Management SystemKavi Kumar
 
game project presentation
game project presentationgame project presentation
game project presentationKavi Kumar
 
कॉपीराइट Copyright
कॉपीराइट Copyrightकॉपीराइट Copyright
कॉपीराइट CopyrightKavi Kumar
 
अंगिका भाषा(Angika Bhasa)
अंगिका भाषा(Angika Bhasa)अंगिका भाषा(Angika Bhasa)
अंगिका भाषा(Angika Bhasa)Kavi Kumar
 
Programming Vocabulary
Programming Vocabulary Programming Vocabulary
Programming Vocabulary Kavi Kumar
 
Sofware engineering
Sofware engineeringSofware engineering
Sofware engineeringKavi Kumar
 

Mehr von Kavi Kumar (7)

Hospital Management System
Hospital Management SystemHospital Management System
Hospital Management System
 
game project presentation
game project presentationgame project presentation
game project presentation
 
कॉपीराइट Copyright
कॉपीराइट Copyrightकॉपीराइट Copyright
कॉपीराइट Copyright
 
अंगिका भाषा(Angika Bhasa)
अंगिका भाषा(Angika Bhasa)अंगिका भाषा(Angika Bhasa)
अंगिका भाषा(Angika Bhasa)
 
Programming Vocabulary
Programming Vocabulary Programming Vocabulary
Programming Vocabulary
 
J query ppt
J query pptJ query ppt
J query ppt
 
Sofware engineering
Sofware engineeringSofware engineering
Sofware engineering
 

Kürzlich hochgeladen

%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 

Kürzlich hochgeladen (20)

Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 

Topic production code

  • 1. Impact of Production Bug/s and How to avoid it 03-Apr-2021
  • 2. Agenda • Why should be even care? • Impact of Production Bug • How to Reduce Bug • TDD • PLUGINs • Few points need to be followed by QA
  • 3. Why should I even care? • Bugs happen all the time – and they will be found in pre- production or in production. • But the main difference between preventing and finding the bug in a pre-production environment is the cost. • According to IBM’s research, fixing a bug in production can cost X5 times more than discovering it in pre- production environments (during the design, local development, or test phase).
  • 4. Impact of Production Bug A customer finds the bug and alerts customer service. The bug is logged by the production team. The developer gets the description of the bug, opens the spec, and spends time reading it over. The developer then will spend time recreating the bug. The developer must then reacquaint him/herself with the code to debug it. Next, the fix must undergo tests. The fix is then built and deployed in other environments. Finally, the fix goes through QA testing (requiring QA resources).
  • 5. How to reduce bug? • Design well. Keep it simple - Create the design before coding: try to divide difficult problems into smaller parts/steps/modules that we can tackle one by one, thinking of objects with well-defined responsibilities. • Create Testable Code - Make sure you see your test fail at least once. This is the key concept of test-driven development(TDD). • KISS (Keep it simple and Straight-forward) - Complex code is destined to lead to bugs, and it is also much more challenging to test. • DRY(Don’t Repeat Your Self) – Check some other forks may already written for you or check if it could be done by existing library. Create Independent method or class. • Use code analysis tools - It help to ensure and maintain the quality of our code. • Don’t Use Comments as a Band-Aid - Keep your code comments as clear and concise as possible. Instead of it use semantic name for method and variable...
  • 6. Continue… • Take Compiler Warnings Into Account - By keeping an eye on these warnings, you can ensure that potential problems are stopped before they become critical issues. • Take Your Time - If team works under intense pressure to release code by unrealistic deadlines, it are more likely to make mistakes. Rushing for a release and cutting corners could create larger issues for the application in long time. So, take your time to ensure that best practices are put in place • Implement Coding Standards • Refactoring - Refactoring aims to improve and redesign the structure of already existing code, without modifying its fundamental behavior. Simple examples of refactoring include fixing improperly names variables or methods and reducing repeated code down to a single method or function. • Run functional tests - Typically, this is not done at the development level. Test cases are written based on the specification, and the actual results are compared with the expected results. Using Selenium and Protractor for UI testing and Junit for API testing. • Release gradually - Test new features on a small set of users before releasing to everyone.
  • 7. TDD(Test Driven Development) TDD will make us automatically think in smaller pieces of code (functions, components, services, directives, whatever we can imagine), Will make us think about well scoped responsibilities, will make us to take design decisions otherwise we may be ignoring. • The Steps : - • Write a single unit test to verify that some criteria is met. • Run the failing test (non compiling code counts as a failing test). • Write just enough code so that the test passes. • Refactor the code making sure that the test still passes. • Start again, incrementally testing and developing your application
  • 8. PLUGINs in VS Code for Angular • Angular Language Service - This extension provides a rich editing experience for Angular templates. • Bracket Pair Colorizer - This extension allows matching brackets to be identified with colors. • Move TS - you can simply move files/folders around and this extension will automatically update your import statements. • Tslint • Code Spell Checker - Code Spell Checker is a spell checker that considers camelCase code.
  • 9. PLUGINs in Eclipse/IntelliJ • SonarLint - SonarLint is an IDE extension that helps you detect and fix quality issues as you write code in Java, JavaScript, PHP, Python and HTML. • Spring Tools (Spring Tool Suite (STS)) - This plugin makes it really easy to create Spring and Spring Boot projects in Eclipse. By using the STS plugin, you can create Spring Boot projects quickly using easy to use start.spring.io integration. • FindBugs - FindBugs is a defect detection tool for Java that uses static analysis to look for more than 200 bug patterns, such as null pointer dereferences, infinite recursive loops, bad uses of the Java libraries and deadlocks. • Rainbow Brackets
  • 10. Few points need to be followed by QA to avoid bug leakage • QA Manager/Lead's/BA’s should actively participate, discuss and bring out scenarios that happens in live environment. • Make sure that test case should covers every modules of your software. • Proper review of test cases from the lead and monitoring the test execution cycle. • Change in hands means if in any build cycle Engineer A executing then in another cycle allot to another QA engineer. • Perform ad hoc test on the product. • Always strive to have comparable data to a production environment