SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
Gemma Blezard




                1
   Purpose of Testing
   Testing Best Practices: What testing should not be used
    for
   Types of Testing

   Testing Roles and Responsibilities
   Test Script Management – Tests and Incidents
   UAT Support




                                                              2
   Check that configuration and code is functional

   Ensure that the system’s initial build meets the agreed requirements

   Help to control the project scope

   Confirm that the finished system can support the client’s business

    processes

   Gain client’s approval to release new functionality for general use




                                                                           3
   Making changes to business processes

   Introducing additional requirements outside of scope

   Making significant cosmetic changes to page layouts and user

    interface

   Training users




That’s what Build Reviews and Training sessions are for…


                                                                   4
   Unit Testing (code developers)

   System Testing

   User Acceptance Testing (aka Functional Testing)

   Production Testing

   Regression Testing




                                                       5
   Is conducted by Apex developers – involves writing clauses in their

    code that automatically tests its coverage

   Evaluates how many records of data the code would successfully

    run on in that environment e.g sandbox / production.

   Is necessary to deploy Apex code into a Production environment –

    you must have over 78% coverage




                                                                          6
   Is conducted by salesforce consultants

   Tests the system’s technical processes from start to finish

   Involves following a test script based on specific outputs

   Is useful for troubleshooting a problem with automated

    rules in the system

   E.g. workflow / validation / assignment / escalation




                                                                  7
   Is conducted by the people who intend to use the application

   Tests the system’s ability to support the business processes – NO

    changes should be made at this stage unless they are fundamental to

    their processes

   Involves following a test script based on what happens in the business

   The desired output is that the client confirms that the system is fit for

    purpose



                                                                                8
   Is a repeat of system testing in the Production environment

   Is designed to test whether config and code have been

    successfully deployed from sandbox to production

   Use the same script that you used for system testing

   If there is time, get the client Project Manager to run through

    their UAT scripts again post deployment




                                                                      9
   Designed to test whether code and config releases affect existing user

    processes within the system

   Takes place once releases have been made that are not meant for ALL users.

    Tests are conducted by system users for whom the new releases are NOT

    intended

   After deployment, users test the ability to use salesforce.com the way they

    normally would

   Users list any system changes that negatively impact their current process

   We fix them!




                                                                                  10
   Project Manager:
•   Coordinates script writing
•   Schedules testing time around day jobs
•   Ensures testers are testing when they are scheduled to
•   Co-ordinate testing sign off

   Business Owners:
•   Write test scripts in accordance with usual business processes
•   Sign off testing

   Testers
•   Follow test scripts, adding comments and incidents
•   Retest following fixes
•   Specify whether each process is a test PASS or FAIL

                                                                     11
   Write and complete system test scripts

   Test code that a developer has written and liaise with client for
    changes

   Ensure that any code developed has over 78% coverage

   Supply clients with UAT script templates

   Provide guidance on how to complete the scripts

   Resolve incidents that crop up during UAT – or liaise with
    developers to resolve them if needs be

   Get sign off confirmed IN WRITING once all tests have passed

                                                                        12
   The build should be completely signed off in writing

   No further changes should be required (including field and
    page layout / cosmetic adjustments to screens)

   UAT scripts should be fully written and ready (by the client!)

   All system tests should be complete and scripted by the
    consultant / developer




                                                                     13
   Test scripts have two parts: TESTS and INCIDENTS
   Are best managed in the form of a spreadsheet in Google
    Docs
   Tests define what process is being tested, steps to follow,
    expected vs actual results, overall test pass/fail and an
    incident number if the test step fails
   The level of technicality in steps/descriptions depends on
    whether it’s for UAT or system testing.
   This example is a system test script for workflow rules that
    are misfiring:




                                                                   14
   If a test step fails, an Incident is created on the Incidents tab
   Incidents include the incident no, step no, description of the
    Actual Result from the test, the estimated cause for the test
    failure and the fix




   Once the initial estimated cause has been identified and the
    problem fixed, you can retest the step
   The step is repeated after the first fix as a Retest – copy and
    paste the original step details as a new row in your
    spreadsheet
   If it fails again, add a new incident to the Incidents tab and
    another retest line in the Tests tab. Keep testing and fixing
    until the tests pass
   For test step to pass, all parts of the step should work as
    expected (ie Actual Result is the same as Expected Result)
                                                                        15
   In this system test example, step 5 of the test script
    failed 3 times.
   We logged 3 incidents (2,3 and 4) then retested, adding
    new retest rows to the script after step 5 as follows:




                                                              16
   UAT is designed to test that the system can support the business
    process
   The only changes that should come from the UAT are fixes
   UAT scripts should not be technical – each step is based entirely
    on requirements from a signed-off requirements matrix OR spec




   A representative from the business (e.g. a process owner) should
    write all UAT scripts while the system is being designed and built
   End users of the system are responsible for following each test
    step and logging incidents
   Consultants log in to the spreadsheet, reviewing and fixing
    incidents then adding retest steps to the test script as the testing
    is happening
                                                                           17
   UAT test scripts look similar to system test scripts but
    they are at a much higher level and use less technical
    language
   They relate to the process and test the requirement, not
    the technology
   Therefore it is usual that UAT will happen before users
    have been trained




                                                               18
Supporting UAT involves
 Guiding users to where they can find things if they get really
  stuck

   Providing process owners with example UAT scripts

   Talking clients through how to write and follow UAT scripts

   Acknowledging and fixing incidents as they occur

   Being assertive with clients when they try to push through
    changes that are not absolutely necessary to support the
    process

   Encouraging clients to formally sign off UAT once all tests
    have passed. This is essentially your formal Build sign off
                                                                   19
Clients are often nervous about UAT because not many
people know how to conduct it properly. Here are some
tips on how to handle resistance from clients:

   “I haven’t been trained on using the system”.
         Gently remind clients that they are testing their own
         processes, NOT the system functionality. Encourage
         them to arrange their own 1hr demo of the system
         to all testers prior to embarking on UAT

   “We can’t test without all our data being present in the
    system”
        You only need a few test records to test the
        process. If your build involves supporting objects
        containing lookup data, load a few records and
        provide the test coordinator with a list of records
        they can use to look up on
                                                                 20
     “I haven’t got any time to test and do my day job too”
      •    Client project managers are fundamental when you’re
           up against this resistance and having a project plan
           with dates is key.
    •      Keep on top of your PM and make sure they book UAT
           into everyone’s diaries as soon as possible after the
           project starts.
      •    Have regular check-in calls through Design and Build
           stages so that you can rearrange dates for testing if
           needed.
      •    Make sure your client PM emphasises the importance
           of testers’ full attention when they are scheduled to
           test and encourages testers’ management teams to
           arrange cover for the “day job” while their staff are
           testing.

                                                                   21

Contenu connexe

Tendances

Salesforce Security Review Tips and Tricks
Salesforce Security Review Tips and TricksSalesforce Security Review Tips and Tricks
Salesforce Security Review Tips and TricksRyan Flood
 
Building a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessBuilding a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessLee Barnes
 
What is (tcoe) testing center of excellence
What is (tcoe) testing center of excellenceWhat is (tcoe) testing center of excellence
What is (tcoe) testing center of excellenceMaveric Systems
 
Test automation framework
Test automation frameworkTest automation framework
Test automation frameworkQACampus
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual TestingDirecti Group
 
Sap test center of excellence
Sap test center of excellenceSap test center of excellence
Sap test center of excellenceInfosys
 
Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing ProcessIntetics
 
An Overview of User Acceptance Testing (UAT)
An Overview of User Acceptance Testing (UAT)An Overview of User Acceptance Testing (UAT)
An Overview of User Acceptance Testing (UAT)Usersnap
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testingRichard Bishop
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8a34sharm
 
Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016Tony Barber
 
Using Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWCUsing Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWCSudipta Deb ☁
 

Tendances (20)

Cloud testing
Cloud testingCloud testing
Cloud testing
 
Salesforce Security Review Tips and Tricks
Salesforce Security Review Tips and TricksSalesforce Security Review Tips and Tricks
Salesforce Security Review Tips and Tricks
 
Building a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessBuilding a Test Automation Strategy for Success
Building a Test Automation Strategy for Success
 
What is (tcoe) testing center of excellence
What is (tcoe) testing center of excellenceWhat is (tcoe) testing center of excellence
What is (tcoe) testing center of excellence
 
Test automation framework
Test automation frameworkTest automation framework
Test automation framework
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Tcoe team
Tcoe teamTcoe team
Tcoe team
 
Test automation process
Test automation processTest automation process
Test automation process
 
Sap test center of excellence
Sap test center of excellenceSap test center of excellence
Sap test center of excellence
 
Testing Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabsTesting Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabs
 
Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing Process
 
An Overview of User Acceptance Testing (UAT)
An Overview of User Acceptance Testing (UAT)An Overview of User Acceptance Testing (UAT)
An Overview of User Acceptance Testing (UAT)
 
Guide to Agile testing
Guide to Agile testingGuide to Agile testing
Guide to Agile testing
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Test Automation - Keytorc Approach
Test Automation - Keytorc Approach Test Automation - Keytorc Approach
Test Automation - Keytorc Approach
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
Test automation proposal
Test automation proposalTest automation proposal
Test automation proposal
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
 
Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016
 
Using Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWCUsing Styling Hooks to Customize Your LWC
Using Styling Hooks to Customize Your LWC
 

Similaire à Best Practices for Testing in salesforce.com

How To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test AutomationHow To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test AutomationRanorex
 
Learn software testing with tech partnerz 1
Learn software testing with tech partnerz 1Learn software testing with tech partnerz 1
Learn software testing with tech partnerz 1Techpartnerz
 
USER ACCEPTANCE TESTING
USER ACCEPTANCE TESTINGUSER ACCEPTANCE TESTING
USER ACCEPTANCE TESTINGKADARI SHIVRAJ
 
How Manual Testers Can Break into Automation Without Programming Skills
How Manual Testers Can Break into Automation Without Programming SkillsHow Manual Testers Can Break into Automation Without Programming Skills
How Manual Testers Can Break into Automation Without Programming SkillsRanorex
 
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptxOS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptxShivareddyGangam
 
Introduction to testing.
Introduction to testing.Introduction to testing.
Introduction to testing.Jithinctzz
 
Test planning.ppt
Test planning.pptTest planning.ppt
Test planning.pptUmmERayyan2
 
Testing Attributes
Testing AttributesTesting Attributes
Testing AttributesAbiha Naqvi
 
Software Testing Foundations Part 2 - Testing in Software Lifecycle
Software Testing Foundations Part 2 - Testing in Software LifecycleSoftware Testing Foundations Part 2 - Testing in Software Lifecycle
Software Testing Foundations Part 2 - Testing in Software LifecycleNikita Knysh
 
SAP Testing Services
SAP Testing ServicesSAP Testing Services
SAP Testing Servicesr_shanki
 

Similaire à Best Practices for Testing in salesforce.com (20)

How To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test AutomationHow To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test Automation
 
Learn software testing with tech partnerz 1
Learn software testing with tech partnerz 1Learn software testing with tech partnerz 1
Learn software testing with tech partnerz 1
 
USER ACCEPTANCE TESTING
USER ACCEPTANCE TESTINGUSER ACCEPTANCE TESTING
USER ACCEPTANCE TESTING
 
Getting Ready for UAT
Getting Ready for UATGetting Ready for UAT
Getting Ready for UAT
 
How Manual Testers Can Break into Automation Without Programming Skills
How Manual Testers Can Break into Automation Without Programming SkillsHow Manual Testers Can Break into Automation Without Programming Skills
How Manual Testers Can Break into Automation Without Programming Skills
 
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptxOS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
 
Introduction to testing.
Introduction to testing.Introduction to testing.
Introduction to testing.
 
Automation Concepts
Automation ConceptsAutomation Concepts
Automation Concepts
 
Test planning.ppt
Test planning.pptTest planning.ppt
Test planning.ppt
 
Testing Attributes
Testing AttributesTesting Attributes
Testing Attributes
 
Software test proposal
Software test proposalSoftware test proposal
Software test proposal
 
Software testing2
Software testing2Software testing2
Software testing2
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Demo1ghjkl
Demo1ghjklDemo1ghjkl
Demo1ghjkl
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
T24 Temenos Methodology Overview
T24 Temenos Methodology OverviewT24 Temenos Methodology Overview
T24 Temenos Methodology Overview
 
Software Testing Foundations Part 2 - Testing in Software Lifecycle
Software Testing Foundations Part 2 - Testing in Software LifecycleSoftware Testing Foundations Part 2 - Testing in Software Lifecycle
Software Testing Foundations Part 2 - Testing in Software Lifecycle
 
SAP Testing Services
SAP Testing ServicesSAP Testing Services
SAP Testing Services
 

Dernier

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
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, ...apidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
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
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
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 Takeoffsammart93
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
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.pdfsudhanshuwaghmare1
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
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 TerraformAndrey Devyatkin
 
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
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 

Dernier (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
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, ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
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...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 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
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
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
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
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
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 

Best Practices for Testing in salesforce.com

  • 2. Purpose of Testing  Testing Best Practices: What testing should not be used for  Types of Testing  Testing Roles and Responsibilities  Test Script Management – Tests and Incidents  UAT Support 2
  • 3. Check that configuration and code is functional  Ensure that the system’s initial build meets the agreed requirements  Help to control the project scope  Confirm that the finished system can support the client’s business processes  Gain client’s approval to release new functionality for general use 3
  • 4. Making changes to business processes  Introducing additional requirements outside of scope  Making significant cosmetic changes to page layouts and user interface  Training users That’s what Build Reviews and Training sessions are for… 4
  • 5. Unit Testing (code developers)  System Testing  User Acceptance Testing (aka Functional Testing)  Production Testing  Regression Testing 5
  • 6. Is conducted by Apex developers – involves writing clauses in their code that automatically tests its coverage  Evaluates how many records of data the code would successfully run on in that environment e.g sandbox / production.  Is necessary to deploy Apex code into a Production environment – you must have over 78% coverage 6
  • 7. Is conducted by salesforce consultants  Tests the system’s technical processes from start to finish  Involves following a test script based on specific outputs  Is useful for troubleshooting a problem with automated rules in the system  E.g. workflow / validation / assignment / escalation 7
  • 8. Is conducted by the people who intend to use the application  Tests the system’s ability to support the business processes – NO changes should be made at this stage unless they are fundamental to their processes  Involves following a test script based on what happens in the business  The desired output is that the client confirms that the system is fit for purpose 8
  • 9. Is a repeat of system testing in the Production environment  Is designed to test whether config and code have been successfully deployed from sandbox to production  Use the same script that you used for system testing  If there is time, get the client Project Manager to run through their UAT scripts again post deployment 9
  • 10. Designed to test whether code and config releases affect existing user processes within the system  Takes place once releases have been made that are not meant for ALL users. Tests are conducted by system users for whom the new releases are NOT intended  After deployment, users test the ability to use salesforce.com the way they normally would  Users list any system changes that negatively impact their current process  We fix them! 10
  • 11. Project Manager: • Coordinates script writing • Schedules testing time around day jobs • Ensures testers are testing when they are scheduled to • Co-ordinate testing sign off  Business Owners: • Write test scripts in accordance with usual business processes • Sign off testing  Testers • Follow test scripts, adding comments and incidents • Retest following fixes • Specify whether each process is a test PASS or FAIL 11
  • 12. Write and complete system test scripts  Test code that a developer has written and liaise with client for changes  Ensure that any code developed has over 78% coverage  Supply clients with UAT script templates  Provide guidance on how to complete the scripts  Resolve incidents that crop up during UAT – or liaise with developers to resolve them if needs be  Get sign off confirmed IN WRITING once all tests have passed 12
  • 13. The build should be completely signed off in writing  No further changes should be required (including field and page layout / cosmetic adjustments to screens)  UAT scripts should be fully written and ready (by the client!)  All system tests should be complete and scripted by the consultant / developer 13
  • 14. Test scripts have two parts: TESTS and INCIDENTS  Are best managed in the form of a spreadsheet in Google Docs  Tests define what process is being tested, steps to follow, expected vs actual results, overall test pass/fail and an incident number if the test step fails  The level of technicality in steps/descriptions depends on whether it’s for UAT or system testing.  This example is a system test script for workflow rules that are misfiring: 14
  • 15. If a test step fails, an Incident is created on the Incidents tab  Incidents include the incident no, step no, description of the Actual Result from the test, the estimated cause for the test failure and the fix  Once the initial estimated cause has been identified and the problem fixed, you can retest the step  The step is repeated after the first fix as a Retest – copy and paste the original step details as a new row in your spreadsheet  If it fails again, add a new incident to the Incidents tab and another retest line in the Tests tab. Keep testing and fixing until the tests pass  For test step to pass, all parts of the step should work as expected (ie Actual Result is the same as Expected Result) 15
  • 16. In this system test example, step 5 of the test script failed 3 times.  We logged 3 incidents (2,3 and 4) then retested, adding new retest rows to the script after step 5 as follows: 16
  • 17. UAT is designed to test that the system can support the business process  The only changes that should come from the UAT are fixes  UAT scripts should not be technical – each step is based entirely on requirements from a signed-off requirements matrix OR spec  A representative from the business (e.g. a process owner) should write all UAT scripts while the system is being designed and built  End users of the system are responsible for following each test step and logging incidents  Consultants log in to the spreadsheet, reviewing and fixing incidents then adding retest steps to the test script as the testing is happening 17
  • 18. UAT test scripts look similar to system test scripts but they are at a much higher level and use less technical language  They relate to the process and test the requirement, not the technology  Therefore it is usual that UAT will happen before users have been trained 18
  • 19. Supporting UAT involves  Guiding users to where they can find things if they get really stuck  Providing process owners with example UAT scripts  Talking clients through how to write and follow UAT scripts  Acknowledging and fixing incidents as they occur  Being assertive with clients when they try to push through changes that are not absolutely necessary to support the process  Encouraging clients to formally sign off UAT once all tests have passed. This is essentially your formal Build sign off 19
  • 20. Clients are often nervous about UAT because not many people know how to conduct it properly. Here are some tips on how to handle resistance from clients:  “I haven’t been trained on using the system”. Gently remind clients that they are testing their own processes, NOT the system functionality. Encourage them to arrange their own 1hr demo of the system to all testers prior to embarking on UAT  “We can’t test without all our data being present in the system” You only need a few test records to test the process. If your build involves supporting objects containing lookup data, load a few records and provide the test coordinator with a list of records they can use to look up on 20
  • 21. “I haven’t got any time to test and do my day job too” • Client project managers are fundamental when you’re up against this resistance and having a project plan with dates is key. • Keep on top of your PM and make sure they book UAT into everyone’s diaries as soon as possible after the project starts. • Have regular check-in calls through Design and Build stages so that you can rearrange dates for testing if needed. • Make sure your client PM emphasises the importance of testers’ full attention when they are scheduled to test and encourages testers’ management teams to arrange cover for the “day job” while their staff are testing. 21