SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Feature Coding
           Part 3
Unit and Integration Testing
         DEV_205
        Eric Shupps
About Me
 Eric   Shupps, MVP
     President, BinaryWave
     Email: eshupps@binarywave.com
   Microsoft Patterns & Practices: spg.codeplex.com
   CKS:DEV cksdev.codeplex.com
   Blog: www.sharepointcowboy.com
   Twitter: @eshupps
   Facebook: www.facebook.com/sharepointcowboy
Agenda
 Testing  Fundamentals
 Code Optimization
 Unit Testing
 Integration Testing
Testing Fundamentals
Testing Objectives
•   Less rework                                       • Eliminate defects
•   Shorter cycles                                    • Validate functionality
•   Faster delivery times                             • Reduce complexity
•   Fewer support
    requests
                             Reduce         Ensure
                             Costs          Quality




                             Increase      Improve
                             Efficiency   Dynamics

    • Faster changes                                  • Facilitate change
    • Repeatable processes                            • Simplify integration
    • Increased confidence                            • Increase modularity
Testing Methodologies
   Any methodology is
    better than no
    methodology
   Select a methodology
    that supports the team
    dynamic and satisfies
    the testing objectives
   Code for the
    customer/end user, not
    the methodology
   Focus on modularity
    and sustainability
Testing Lifecycle



   Unit     Integration   Regression
Code Optimization
Code Isolation and Refactoring
                           Class

 Method Method Method Method Method Method




         Class             Class                 Class

 Method Method Method Method Method Method



  Test       Test   Test           Test   Test           Test
Refactor the core solution components for testability.

CODE ISOLATION
Unit Testing
Unit Testing Objectives

                   Integrate

        Validate               Refactor



    Isolate        Code            Maintain
Unit Testing Principles
   Separate interface from
    implementation
   Fail first in order to
    succeed
   Tests do not drive
    functionality - they verify
    functionality
   Features define tests
    and tests define methods
   Tests should exercise all
    probable execution paths
Unit Testing Methodologies
   Separate interface from
    implementation
   Fail first in order to
    succeed
   Tests do not drive
    functionality - they verify
    functionality
   Features define tests
    and tests define methods
   Tests should exercise all
    probable execution paths
Create and execute unit tests for isolated code.

UNIT TESTS
IntegrationTesting
Integration Testing Objectives

     Test code
 execution against     Verify methods as
                                              Validate/invalidate
       target         they will be used in
                                               unit test results
system/dependenci        released code
         es


                                       Identify
           Exercise all points
                                   vulnerabilities in
           of interoperability
                                   execution chain
Integration Testing Principles
   Tests should exercise
    actual dependencies –
    no mocks or stubs
   Tests should not be
    authored or driven by
    developer
   Tests should cover all
    application tiers (top-
    down, bottom-up, or
    both)
   Manual testing is
    acceptable (and often
    preferred)
Integration Testing Methodologies
   Inverse Isolation
     Reusing unit tests by
      replacing mock or stub
      objects with actual
      implementations
   Black Box
     Open-ended, interface-
      driven tests that explore
      available functionality and
      are not driven by specific
      feature requirements
   White Box
     Predefined set of test
      routines that verify specific
      functional requirements
Create and execute integration tests for core solution components.

INTEGRATION TESTS
Thank you for attending!
(This slide must always be the last
         slide in your deck)

Weitere ähnliche Inhalte

Was ist angesagt?

Configuration testing
Configuration testingConfiguration testing
Configuration testing
farouq umar
 
Integration in component based technology
Integration in component based technologyIntegration in component based technology
Integration in component based technology
Saransh Garg
 

Was ist angesagt? (20)

Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Automated visual-regression-testing (1)
Automated visual-regression-testing (1)Automated visual-regression-testing (1)
Automated visual-regression-testing (1)
 
Integration testing
Integration testingIntegration testing
Integration testing
 
Testing Best Practices
Testing Best PracticesTesting Best Practices
Testing Best Practices
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Performance testing
Performance testing Performance testing
Performance testing
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Configuration testing
Configuration testingConfiguration testing
Configuration testing
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
Software Testing
Software Testing Software Testing
Software Testing
 
software testing
software testing software testing
software testing
 
Integration testing
Integration testingIntegration testing
Integration testing
 
Integration in component based technology
Integration in component based technologyIntegration in component based technology
Integration in component based technology
 
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
 
Testing
TestingTesting
Testing
 
Software Testing , levels, Techniques, Tools
Software Testing , levels, Techniques, ToolsSoftware Testing , levels, Techniques, Tools
Software Testing , levels, Techniques, Tools
 
Functional Testing
Functional TestingFunctional Testing
Functional Testing
 
Software Teting
Software TetingSoftware Teting
Software Teting
 
Non functional testing
Non functional testingNon functional testing
Non functional testing
 
Python: Object-Oriented Testing (Unit Testing)
Python: Object-Oriented Testing (Unit Testing)Python: Object-Oriented Testing (Unit Testing)
Python: Object-Oriented Testing (Unit Testing)
 

Ähnlich wie Share point 2010 unit and integration testing

An Automation Framework That Really Works
An Automation Framework That Really WorksAn Automation Framework That Really Works
An Automation Framework That Really Works
Basivi Reddy Junna
 
Practical Testing Definition for Mobile Devices
Practical Testing Definition for Mobile DevicesPractical Testing Definition for Mobile Devices
Practical Testing Definition for Mobile Devices
Johan Hoberg
 
The good the bad and the ugly - final
The good the bad and the ugly - finalThe good the bad and the ugly - final
The good the bad and the ugly - final
Andre Verschelling
 
UNIT TESTING PPT
UNIT TESTING PPTUNIT TESTING PPT
UNIT TESTING PPT
suhasreddy1
 

Ähnlich wie Share point 2010 unit and integration testing (20)

Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.
 
Database Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTSDatabase Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTS
 
Automated Testing Tutorial
Automated Testing TutorialAutomated Testing Tutorial
Automated Testing Tutorial
 
Software Testing Strategies ,Validation Testing and System Testing.
Software Testing Strategies ,Validation Testing and System Testing.Software Testing Strategies ,Validation Testing and System Testing.
Software Testing Strategies ,Validation Testing and System Testing.
 
An Automation Framework That Really Works
An Automation Framework That Really WorksAn Automation Framework That Really Works
An Automation Framework That Really Works
 
How to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps EnvironmentHow to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps Environment
 
V Model in Software Testing
V Model in Software TestingV Model in Software Testing
V Model in Software Testing
 
Software presentation
Software presentationSoftware presentation
Software presentation
 
Unit testing
Unit testingUnit testing
Unit testing
 
Practical Testing Definition for Mobile Devices
Practical Testing Definition for Mobile DevicesPractical Testing Definition for Mobile Devices
Practical Testing Definition for Mobile Devices
 
10-Testing-system.pdf
10-Testing-system.pdf10-Testing-system.pdf
10-Testing-system.pdf
 
power point presentation of software testing amravati.pptx
power point presentation of software testing amravati.pptxpower point presentation of software testing amravati.pptx
power point presentation of software testing amravati.pptx
 
Unit Testing
Unit TestingUnit Testing
Unit Testing
 
Higher Order Testing
Higher Order TestingHigher Order Testing
Higher Order Testing
 
Lightning Talks by Globant - Automation (This app runs by itself )
Lightning Talks by Globant -  Automation (This app runs by itself ) Lightning Talks by Globant -  Automation (This app runs by itself )
Lightning Talks by Globant - Automation (This app runs by itself )
 
A Comprehensive Guide to Accelerate and Strengthen Your End-to-End Testing Ap...
A Comprehensive Guide to Accelerate and Strengthen Your End-to-End Testing Ap...A Comprehensive Guide to Accelerate and Strengthen Your End-to-End Testing Ap...
A Comprehensive Guide to Accelerate and Strengthen Your End-to-End Testing Ap...
 
Automated testing overview
Automated testing overviewAutomated testing overview
Automated testing overview
 
The good the bad and the ugly - final
The good the bad and the ugly - finalThe good the bad and the ugly - final
The good the bad and the ugly - final
 
UNIT TESTING PPT
UNIT TESTING PPTUNIT TESTING PPT
UNIT TESTING PPT
 

Mehr von Eric Shupps

Mehr von Eric Shupps (20)

Microsoft Ignite 2022 - Scaling, Securing, Managing, and Publishing Power Pla...
Microsoft Ignite 2022 - Scaling, Securing, Managing, and Publishing Power Pla...Microsoft Ignite 2022 - Scaling, Securing, Managing, and Publishing Power Pla...
Microsoft Ignite 2022 - Scaling, Securing, Managing, and Publishing Power Pla...
 
Scaling, Securing, Managing, and Publishing Power Platform Custom Connectors....
Scaling, Securing, Managing, and Publishing Power Platform Custom Connectors....Scaling, Securing, Managing, and Publishing Power Platform Custom Connectors....
Scaling, Securing, Managing, and Publishing Power Platform Custom Connectors....
 
A Beginners Guide to Custom Connectors for Power Apps and Power Automate
A Beginners Guide to Custom Connectors for Power Apps and Power AutomateA Beginners Guide to Custom Connectors for Power Apps and Power Automate
A Beginners Guide to Custom Connectors for Power Apps and Power Automate
 
App to AppExchange - A Journey from Idea to Market for Salesforce Developers
App to AppExchange - A Journey from Idea to Market for Salesforce DevelopersApp to AppExchange - A Journey from Idea to Market for Salesforce Developers
App to AppExchange - A Journey from Idea to Market for Salesforce Developers
 
Beginners Guide to Custom Connectors for Power Apps and Power Automate
Beginners Guide to Custom Connectors for Power Apps and Power AutomateBeginners Guide to Custom Connectors for Power Apps and Power Automate
Beginners Guide to Custom Connectors for Power Apps and Power Automate
 
OSW06 - A Real World Guide to Building Highly Available Fault Tolerant ShareP...
OSW06 - A Real World Guide to Building Highly Available Fault Tolerant ShareP...OSW06 - A Real World Guide to Building Highly Available Fault Tolerant ShareP...
OSW06 - A Real World Guide to Building Highly Available Fault Tolerant ShareP...
 
OSH01 - Developing SharePoint Framework Solutions for the Enterprise
OSH01 - Developing SharePoint Framework Solutions for the EnterpriseOSH01 - Developing SharePoint Framework Solutions for the Enterprise
OSH01 - Developing SharePoint Framework Solutions for the Enterprise
 
Mastering Modern Authentication and Authorization Techniques for SharePoint, ...
Mastering Modern Authentication and Authorization Techniques for SharePoint, ...Mastering Modern Authentication and Authorization Techniques for SharePoint, ...
Mastering Modern Authentication and Authorization Techniques for SharePoint, ...
 
Developing SharePoint Framework Solutions for the Enterprise (SPC 2019)
Developing SharePoint Framework Solutions for the Enterprise (SPC 2019)Developing SharePoint Framework Solutions for the Enterprise (SPC 2019)
Developing SharePoint Framework Solutions for the Enterprise (SPC 2019)
 
Developing SharePoint Framework Solutions for the Enterprise - SEF 2019
Developing SharePoint Framework Solutions for the Enterprise - SEF 2019Developing SharePoint Framework Solutions for the Enterprise - SEF 2019
Developing SharePoint Framework Solutions for the Enterprise - SEF 2019
 
SharePoint and Office 365 Development Workshop
SharePoint and Office 365 Development WorkshopSharePoint and Office 365 Development Workshop
SharePoint and Office 365 Development Workshop
 
ECS 2018: Introduction to Azure Web Applications
ECS 2018: Introduction to Azure Web ApplicationsECS 2018: Introduction to Azure Web Applications
ECS 2018: Introduction to Azure Web Applications
 
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
 
Overcoming Gender Imbalance in the Technical Field
Overcoming Gender Imbalance in the Technical FieldOvercoming Gender Imbalance in the Technical Field
Overcoming Gender Imbalance in the Technical Field
 
Mastering Modern Authentication and Authorization for SharePoint and Office A...
Mastering Modern Authentication and Authorization for SharePoint and Office A...Mastering Modern Authentication and Authorization for SharePoint and Office A...
Mastering Modern Authentication and Authorization for SharePoint and Office A...
 
Enterprise Content Management Solutions in SharePoint and Office 365
Enterprise Content Management Solutions in SharePoint and Office 365Enterprise Content Management Solutions in SharePoint and Office 365
Enterprise Content Management Solutions in SharePoint and Office 365
 
Introduction to the Office Dev PnP Core Libraries
Introduction to the Office Dev PnP Core LibrariesIntroduction to the Office Dev PnP Core Libraries
Introduction to the Office Dev PnP Core Libraries
 
SharePoint and Office Development Workshop
SharePoint and Office Development WorkshopSharePoint and Office Development Workshop
SharePoint and Office Development Workshop
 
From Zero to Hero: A Real World Guide to Building High Availability SharePoin...
From Zero to Hero: A Real World Guide to Building High Availability SharePoin...From Zero to Hero: A Real World Guide to Building High Availability SharePoin...
From Zero to Hero: A Real World Guide to Building High Availability SharePoin...
 
SharePoint and Office 365 Performance Best Practices
SharePoint and Office 365 Performance Best PracticesSharePoint and Office 365 Performance Best Practices
SharePoint and Office 365 Performance Best Practices
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
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?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Share point 2010 unit and integration testing

  • 1. Feature Coding Part 3 Unit and Integration Testing DEV_205 Eric Shupps
  • 2. About Me  Eric Shupps, MVP  President, BinaryWave  Email: eshupps@binarywave.com  Microsoft Patterns & Practices: spg.codeplex.com  CKS:DEV cksdev.codeplex.com  Blog: www.sharepointcowboy.com  Twitter: @eshupps  Facebook: www.facebook.com/sharepointcowboy
  • 3. Agenda  Testing Fundamentals  Code Optimization  Unit Testing  Integration Testing
  • 5. Testing Objectives • Less rework • Eliminate defects • Shorter cycles • Validate functionality • Faster delivery times • Reduce complexity • Fewer support requests Reduce Ensure Costs Quality Increase Improve Efficiency Dynamics • Faster changes • Facilitate change • Repeatable processes • Simplify integration • Increased confidence • Increase modularity
  • 6. Testing Methodologies  Any methodology is better than no methodology  Select a methodology that supports the team dynamic and satisfies the testing objectives  Code for the customer/end user, not the methodology  Focus on modularity and sustainability
  • 7. Testing Lifecycle Unit Integration Regression
  • 9. Code Isolation and Refactoring Class Method Method Method Method Method Method Class Class Class Method Method Method Method Method Method Test Test Test Test Test Test
  • 10. Refactor the core solution components for testability. CODE ISOLATION
  • 12. Unit Testing Objectives Integrate Validate Refactor Isolate Code Maintain
  • 13. Unit Testing Principles  Separate interface from implementation  Fail first in order to succeed  Tests do not drive functionality - they verify functionality  Features define tests and tests define methods  Tests should exercise all probable execution paths
  • 14. Unit Testing Methodologies  Separate interface from implementation  Fail first in order to succeed  Tests do not drive functionality - they verify functionality  Features define tests and tests define methods  Tests should exercise all probable execution paths
  • 15. Create and execute unit tests for isolated code. UNIT TESTS
  • 17. Integration Testing Objectives Test code execution against Verify methods as Validate/invalidate target they will be used in unit test results system/dependenci released code es Identify Exercise all points vulnerabilities in of interoperability execution chain
  • 18. Integration Testing Principles  Tests should exercise actual dependencies – no mocks or stubs  Tests should not be authored or driven by developer  Tests should cover all application tiers (top- down, bottom-up, or both)  Manual testing is acceptable (and often preferred)
  • 19. Integration Testing Methodologies  Inverse Isolation  Reusing unit tests by replacing mock or stub objects with actual implementations  Black Box  Open-ended, interface- driven tests that explore available functionality and are not driven by specific feature requirements  White Box  Predefined set of test routines that verify specific functional requirements
  • 20. Create and execute integration tests for core solution components. INTEGRATION TESTS
  • 21. Thank you for attending! (This slide must always be the last slide in your deck)