Book Image

Mastering Application Development with Force.com

By : Kevin J. Poorman
Book Image

Mastering Application Development with Force.com

By: Kevin J. Poorman

Overview of this book

Force.com is an extremely powerful, scalable, and secure cloud platform, delivering a complete technology stack, ranging from databases and security to workflow and the user interface. With salesforce.com's Force.com cloud platform, you can build any business application and run it on your servers. The book will help you enhance your skillset and develop complex applications using Force.com. It gets you started with a quick refresher of Force.com's development tools and methodologies, and moves to an in-depth discussion of triggers, bulkification, DML order of operations, and trigger frameworks. Next, you will learn to use batchable and schedulable interfaces to process massive amounts of information asynchronously. You will also be introduced to Salesforce Lightning and cover components—including backend (apex) controllers, frontend (JavaScript) controllers, events, and attributes—in detail. Moving on, the book will focus on testing various apex components: what to test, when to write the tests, and—most importantly—how to test. Next, you will develop a changeset and use it to migrate your code from one org to another, and learn what other tools are out there for deploying metadata. You will also use command-line tools to authenticate and access the Force.com Rest sObject API and the Bulk sObject API; additionally, you will write a custom Rest endpoint, and learn how to structure a project so that multiple developers can work independently of each other without causing metadata conflicts. Finally, you will take an in-depth look at the overarching best practices for architecture (structure) and engineering (code) applications on the Force.com platform.
Table of Contents (16 chapters)
Mastering Application Development with Force.com
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Tips and tricks for efficient testing


Following the general pattern for creating your own test data outlined here: executing the tested code between startTest() and stopTest() calls and always including asserts in the tests will set you on a good path for useful, robust tests. This doesn't, however, mean that the tests are fast. To help keep tests fast and your test-code feedback loop tight, keep these tips and tricks in mind:

  • If you don't need to, don't insert and query data to and from the database. Starting with winter '13, you can set a value for the Id field, so long as you don't try to insert it. This allows you to create an object, set its ID, and create other objects that reference it. The slowest part of any web-based application is historically the database, and Salesforce1 is no exception. If you can cut down your SOQL and DML, your tests will run faster.

  • Use @testVisible. This annotation allows you to quickly and easily annotate private class variables and methods and then access...