Sie befinden sich hier:
Testen eines Flows mit isolierten Testdaten
Testen Sie durch einen Datensatz ausgelöste und automatisch gestartete Flows mithilfe von dedizierten wiederverwendbaren Testdaten aus einer Apex-Klasse, die eine Test-Setup-Methode enthält. Nach der Ausführung eines Testszenarios werden die isolierten Testdaten wie bei einem Apex-Einheitentest zurückgesetzt, sodass die Live-Daten Ihrer Organisation unverändert bleiben.
Erforderliche Editionen
| Unterstützte Editionen anzeigen. |
| Erforderliche Benutzerberechtigungen | |
|---|---|
| Öffnen, Bearbeiten, Erstellen, Aktivieren oder Deaktivieren eines Flows mit allen in Flow Builder verfügbaren Flow-Typen, -Elementen und -Funktionen, einschließlich Einstein und Agentforce für Flow: | Flow verwalten |
Wenn Sie Organisationsdaten für Tests verwenden, kann jeder diese Daten ändern und Ihre Tests können fehlschlagen. Datensatz-IDs unterscheiden sich zwischen Sandbox und Produktion. Daher können Tests, die in einer Umgebung bestanden werden, fehlschlagen, wenn Sie sie in einer anderen bereitstellen. Erstellen Sie beim Ausführen des Testszenarios isolierte Testdaten, so wie das Apex Test-Setup Daten zur Laufzeit erstellt. Ihre Testdaten bleiben konsistent, sodass Sie sie umgebungsübergreifend bereitstellen können.
Informationen zum Öffnen eines Flows im Testmodus finden Sie unter Einrichten und Ausführen eines Testszenarios (Beta).
-
Erstellen Sie eine Apex-Klasse mit der Anmerkung
@isTestund einer@testSetup-Methode, die die Datensätze einfügt, die während des Testszenarios verfügbar sein sollen.Diese Apex-Klasse erstellt beispielsweise Testaccounts. Entsprechende Informationen finden Sie unter Verwenden von Apex Test-Setup-Methoden.
@isTest global class CommonTestSetup { @testSetup global static void setup() { List<Account> accts = new List<Account>(); for (Integer i = 1; i <= 2; i++) { accts.add(new Account(Name = 'Test Account ' + i)); } insert accts; } }Wenn Sie isolierte Testdaten in einem Datensilo verwenden, muss Ihr Eingabedatensatz auf einen Datensatz verweisen, den Sie in Ihren isolierten Testdaten erstellt haben. Wenn der Datensatz in diesen Daten nicht vorhanden ist, wird ein Fehler angezeigt. Im Gegensatz zu einem Testszenario, das Organisationsdaten verwendet, können Sie die Feldwerte eines Eingabedatensatzes in isolierten Testdaten aus Flow Builder nicht anpassen. Der Datensatz wird in den isolierten Testdaten anhand seiner Schlüsselfelder ausgewählt und unverändert verwendet. Füllen Sie in Ihrer Apex
@testSetup-Methode alle wichtigen Felder aus. Sie wählen die wichtigsten Felder später in diesen Schritten aus. - Öffnen Sie einen durch einen Datensatz ausgelösten Flow oder automatisch gestarteten Flow.
- Klicken Sie auf Test, um in den Testmodus (Beta) zu wechseln.
-
Aktivieren Sie Szenariotestautomatisierung und wählen Sie dann für "Datenquelle auswählen" die Option Aus Datensilo ausführen aus.
Das erforderliche Feld Apex Test Setup wird angezeigt. Wählen Sie die von Ihnen erstellte Apex
@testSetup-Klasse aus. Beim Testszenario wird die Apex-Klasse als Datenquelle verwendet. Dadurch bleiben Ihre Organisationsdaten unverändert.
-
Wählen Sie die Schlüsselfelder für jedes im Testszenario verwendete Objekt aus.
Die externen Schlüsselfelder des isolierten Objekts identifizieren eindeutige Datensätze in den isolierten Testdaten. Da sich die Testdatensatz-IDs nach jeder Ausführung ändern, gleichen diese wichtigen Felder Eingabedatensätze zur Laufzeit mit den isolierten Testdaten ab. Verwenden Sie beispielsweise das Feld
Phoneals Schlüsselfeld, um Accountdatensätze zu identifizieren.
- Legen Sie den auslösenden Datensatz oder die auslösenden Eingabewerte so fest, dass sie mit einem Datensatz in Ihren isolierten Testdaten übereinstimmen.
-
Konfigurieren Sie für "Erwartete Ergebnisse (Behauptungen)" alle Behauptungen und klicken Sie dann auf Szenario speichern und Szenario ausführen.
Das Testszenario wird anhand der isolierten Testdaten im Datensilo und nicht anhand Ihrer Live-Organisationsdaten ausgeführt.
