Salesforce DevOps & CI/CD Flashcards

1
Q

Q. What is DevOps in Salesforce?

A

A. DevOps in Salesforce refers to a set of practices, tools, and cultural philosophies that automate and streamline development, testing, deployment, and collaboration in Salesforce projects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Q. What are the key goals of Salesforce DevOps?

A
  • Increase deployment speed and frequency
  • Reduce manual errors in deployments
  • Improve collaboration between teams
  • Enable continuous integration & continuous deployment (CI/CD)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Q. What are the main challenges in Salesforce DevOps?

A
  • Metadata-based deployment complexities
  • Limited version control adoption
  • Profile & permission management issues
  • Data and environment inconsistencies
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Q. What is version control in Salesforce DevOps?

A

A. Version control is a system that tracks code changes, metadata updates, and configuration changes, enabling team collaboration and rollback capabilities.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Q. What are common version control systems (VCS) used in Salesforce?

A
  • Git (GitHub, GitLab, Bitbucket, Azure DevOps)
  • SVN (Subversion)
  • Perforce
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Q. Why is version control important in Salesforce?

A
  • Enables collaboration
  • Provides audit history of changes
  • Supports rollback & conflict resolution
  • Allows branching & merging strategies
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Q. What is the best Git branching strategy for Salesforce development?

A
  • Feature Branching + GitFlow
  • Main branch → Stable production
  • Develop branch → Integrates new features
  • Feature branches → Individual development tasks
  • Hotfix branches → Urgent bug fixes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Q. What is Salesforce DX?

A

A. A developer-centric CLI toolset that enables modern DevOps practices, including version control, CI/CD, and scratch org-based development.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Q. What are key features of Salesforce DX?

A
  • Scratch Orgs for temporary development environments
  • Source-tracked development
  • Metadata API & CLI-based deployments
  • Automation for CI/CD
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Q. What is a Scratch Org?

A

A. A temporary and disposable Salesforce environment used for development and testing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Q. How do you create a scratch org using SFDX?

A

sfdx force:org:create -f config/project-scratch-def.json -a MyScratchOrg -s

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Q. What is Continuous Integration (CI) in Salesforce?

A

A. CI is a practice where developers integrate code into a shared repository frequently and automatically, ensuring that changes are tested.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Q. What tools are commonly used for CI in Salesforce?

A
  • GitHub Actions
  • Jenkins
  • Bitbucket Pipelines
  • Azure DevOps
  • CircleCI
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Q. What are key benefits of Continuous Integration?

A
  • Detects bugs early
  • Reduces integration issues
  • Automates testing & builds
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Q. What steps are involved in a CI pipeline?

A
  • Code is pushed to Git repository
  • Automated build & test process starts
  • Static code analysis is performed
  • Deployment validation happens in a test environment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Q. What is Continuous Deployment (CD) in Salesforce?

A

A. CD is the automated process of deploying validated changes from source control to various environments (e.g., Dev, QA, UAT, Production).

17
Q

Q. What tools support Continuous Deployment in Salesforce?

A
  • Gearset
  • Copado
  • AutoRABIT
  • Flosum
  • Jenkins + SFDX
18
Q

Q. What are the different deployment methods in Salesforce?

A
  • Change Sets (UI-based, not ideal for DevOps)
  • Metadata API (mdapi) (Deploys metadata in XML format)
  • Salesforce DX (sfdx) (Modern CLI-based deployments)
  • Unlocked Packages (Modular deployment strategy)
19
Q

Q. How do you deploy metadata using SFDX?

A

sfdx force:mdapi:deploy -d “deployPackage” -u MyTargetOrg

20
Q

Q. What are best practices for release management in Salesforce?

A
  • Use sandbox environments for testing
  • Automate deployments using CI/CD tools
  • Perform code reviews before merging
  • Maintain a consistent branching strategy
21
Q

Q. Why is automated testing important in Salesforce DevOps?

A

A. It ensures that new changes do not break existing functionality, reducing bugs in production.

22
Q

Q. What types of automated testing are used in Salesforce?

A
  • Unit Testing (Apex Tests)
  • UI Testing (Selenium, Testim, Provar)
  • Integration Testing (API-based tests)
  • Performance Testing (JMeter, BlazeMeter)
23
Q

Q. What is the required code coverage for Apex tests in Salesforce?

A

A. Salesforce requires 75% code coverage before deploying to production.

24
Q

Q. How do you run Apex tests using SFDX?

A

sfdx force:apex:test:run -u MyTargetOrg -r human

25
Q

Q. Why is backup important in Salesforce DevOps?

A

A. To prevent data loss during deployments and ensure quick recovery from failures.

26
Q

Q. What are Salesforce backup options?

A
  • Salesforce Weekly Export (manual)
  • Salesforce Shield (Field Audit Trail, Event Monitoring)
  • Third-Party Tools (OwnBackup, Spanning, Veeam)
27
Q

Q. What is the best practice for disaster recovery in Salesforce?

A
  • Maintain regular backups
  • Store backup data securely
  • Implement rollback mechanisms for deployments
28
Q

Q. What security best practices should be followed in Salesforce DevOps?

A
  • Use OAuth authentication for CI/CD tools
  • Implement permission set automation
  • Encrypt sensitive metadata & data
  • Monitor API & deployment logs
29
Q

Q. How do you enforce compliance in Salesforce deployments?

A
  • Use static code analysis tools (PMD, SonarQube)
  • Conduct security scans before deployment
  • Ensure audit logging of deployments
30
Q

Q. What key DevOps metrics should be tracked in Salesforce?

A
  • Deployment frequency
  • Change failure rate
  • Mean time to recover (MTTR)
  • Test coverage percentage
31
Q

Q. How do you monitor CI/CD pipeline performance?

A
  • Use logging and alerting tools (Splunk, New Relic)
  • Track build success/failure rates
  • Analyze deployment impact using Salesforce Shield
32
Q

Q. What are best practices for implementing Salesforce DevOps?

A
  • Automate CI/CD pipelines using GitHub Actions, Jenkins, or Bitbucket
  • Use scratch orgs & SFDX workflows
  • Maintain consistent branching strategies
  • Implement unit tests & automated QA
  • Perform regular security audits