The new "Automation overview" dashboard is designed to offer key insights into the state of automation within your Salesforce Org.
Through a series of donut charts, the dashboard provides a comprehensive view of automation types, flow sub-types, fault coverage, test coverage, and complexity levels. This feature set aims to empower Salesforce administrators and consultants with actionable data to assess and improve the health of automation in their Org.
The automation overview dashboard does not include analysis of automation from the managed packages.
Overview of Automation Types
The dashboard kicks off with a donut chart that categorizes automations in the Org by type:
process builder workflow,
workflow field update,
This chart provides a high-level view of the technologies being used for automation, helping you understand the makeup of your Org's automation landscape.
Breakdown of Flows by Type
This section features a chart that breaks down all flows in the Org by their respective sub-types. Note that process builder workflows are not included in this chart. This breakdown allows you to understand the diversity of flow types and their usage in your Org.
Fault Coverage in Flows
A donut chart in this section shows all flows broken down by fault coverage. The fault coverage is segmented into four categories: below 75% coverage, 75%-90% coverage, above 90% coverage, and not applicable (if a flow has no elements that can have a fault path). This helps you identify areas that may require additional testing or review.
Test Coverage in Apex Classes and Triggers
This chart breaks down all apex classes and triggers by their test coverage. The test coverage is grouped into three categories: below 75% coverage, 75%-90% coverage, and above 90% coverage. This provides insights into the robustness of your test cases and highlights areas that may need attention.
When test coverage shows as 0%
Sometimes, the chart will show test coverage to be 0% or close to 0% across most classes and triggers even though you have test classes covering them. This happens because your previous test results have been invalidated. It can happen for many reasons but it is easily rectifiable:
Recent Deployments: If you've recently deployed code, the test coverage might be reset and you may need to run all tests again.
Code Modifications: Any changes to the Apex classes or triggers could invalidate the previous test results, requiring you to rerun the tests.
Test Failures: If the tests themselves are failing due to errors or exceptions, they won't contribute to the coverage.
Asynchronous Execution: Sometimes tests run asynchronously and may not have completed, causing the coverage to appear as 0%. Make sure all tests have been completed.
Sandbox Refresh: If you're working in a sandbox, a sandbox refresh will reset all your test execution results, including coverage.
Org Migration: Moving code between different orgs (e.g., from sandbox to production) will also reset test coverage, requiring tests to be rerun.
Profile and Permission Issues: Sometimes, the user profile running the tests may not have the necessary permissions to execute all paths in the code, leading to low or zero coverage.
Complexity Analysis of Apex Classes
This section offers a chart that categorizes all apex classes (excluding those from managed packages) by their complexity score, which can be low, medium, high, or extremely high. This helps you identify potentially problematic classes that might require refactoring and optimizing.
Complexity Analysis of Flows
Similar to apex classes, this chart breaks down all flows (excluding those from managed packages) by their complexity score. The score levels are low, medium, high, or extremely high. This analysis aids in identifying flows that might be overly complex and could benefit from optimization.