Book Image

DevOps for Salesforce

By : Priyanka Dive, Nagraj Gornalli
Book Image

DevOps for Salesforce

By: Priyanka Dive, Nagraj Gornalli

Overview of this book

Salesforce is one of the top CRM tools used these days, and with its immense functionalities and features, it eases the functioning of an enterprise in various areas of sales, marketing, and finance, among others. Deploying Salesforce applications is a tricky event, and it can get quite taxing for admins and consultants. This book addresses all the problems that you might encounter while trying to deploy your applications and shows you how to resort to DevOps to take these challenges head on. Beginning with an overview of the development and delivery process of a Salesforce app, DevOps for Salesforce covers various types of sandboxing and helps you understand when to choose which type. You will then see how different it is to deploy with Salesforce as compared to deploying with another app. You will learn how to leverage a migration tool and automate deployment using the latest and most popular tools in the ecosystem. This book explores topics such as version control and DevOps techniques such as Continuous Integration, Continuous Delivery, and testing. Finally, the book will conclude by showing you how to track bugs in your application changes using monitoring tools and how to quantify your productivity and ROI. By the end of the book, you will have acquired skills to create, test, and effectively deploy your applications by leveraging the features of DevOps.
Table of Contents (14 chapters)
Title Page
Packt Upsell

Executing Apex tests in a deployment using Jenkins

In Salesforce code, coverage of Apex components should be more than 75% to deploy changes to production. If any test case fails during deployment, then deployment to production will also fail. To avoid this, it is recommended that you test your deployment in sandbox first before deploying it to production. Sometimes, individual code coverage of Apex components may be less than 75%, but overall code coverage for your organization should be 75% or more. To ensure test cases don't fail in production, you can execute a subset of test cases in sandbox after it's deployed. We have already seen deploying changes from one sandbox to another in the previous chapter. We just need to make small changes in build.xml to specify the subset of tests to execute while deploying.


Here is a sample build.xml with test cases to execute:

<target name="deployCode"> 
    <sf:deploy username="${sf.username}" password="${sf.password}"