Salesforce-Test-Tutorial für Anfänger

⚡ Intelligente Zusammenfassung

Salesforce Testing erklärt, wie QA-Teams angepassten Apex-Code, Lightning UI-Flows, Integrationen und Einstein AI-Funktionen innerhalb des weltweit führenden Cloud-CRM validieren und dabei die Falle vermeiden, das integrierte Plattformverhalten in Sandboxes zu testen.

  • ☁️ Was es ist: Validierung von Konfigurationen, Apex-Klassen und Lightning-Komponenten, die auf dem Standard-Salesforce aufbauen.
  • 🎯 Warum es darauf ankommt: Für Apex-Bereitstellungen ist eine Codeabdeckung von 75 % erforderlich, und Lightning-Neuschreibungen führen zu Problemen mit älteren Classic-Testsuiten.
  • 🧪 Etagen: Unit-, System-, UAT-, Produktions-, Regressions- und Integrationsprüfungen in Sandbox-Umgebungen.
  • Top-Tools: Tricentis Testautomatisierung für Salesforce, Testsigma, Provar, Copado und Selenium mit kundenspezifischen Positionselementen.
  • 🤖 KI-Perspektive: Selbstheilende Locatoren, die Validierung mit der Einstein 1 Plattform und Agentforce-Workflows treiben nun die nächste Welle der Testautomatisierung voran.

Salesforce-Test-Tutorial

Was ist Salesforce?

Salesforce ist das weltweit erste cloudbasierte CRM-System. Es wurde im März 1999 von Marc Benioff und Parker Harris gegründet. Ziel dieser CRM-Plattform ist es, Anwendern kostengünstig zu helfen, über alle Kanäle hinweg zu verkaufen, Service zu bieten, Marketing zu betreiben, Analysen durchzuführen und mit ihren Kunden in Kontakt zu treten.

SFDC (Salesforce.com) bietet standardmäßig Funktionen zur Verwaltung von Beziehungen zu Interessenten und Kunden. Es ermöglicht außerdem die Zusammenarbeit mit Mitarbeitern und Partnern und speichert Daten sicher in der mandantenfähigen Cloud. Aktuell umfasst es Sales Cloud, Service Cloud, Marketing Cloud, Data Cloud und die Einstein 1 Plattform, die generative KI-Funktionen ermöglicht.

Erste Wahl
Salesforce

Salesforce CRM basiert auf einer Plattform-Entwicklungssprache namens APEX. Durch Salesforce-Tests können Sie überprüfen, ob die Konfiguration und der Code funktionsfähig sind. Mit diesem CRM konnte ich die Kundentreue, -bindung und -zufriedenheit verbessern und so dauerhafte Verbindungen aufbauen.

Besuchen Sie Salesforce

Was sind Salesforce-Tests?

Ein großer Vorteil von Salesforce ist, dass die meisten Standardfunktionen an die Bedürfnisse eines Unternehmens angepasst werden können. Salesforce-Tests dienen der Validierung der Konfiguration und Anpassung in der Standard-SFDC-Umgebung, einschließlich Apex-Klassen, Lightning Web Components, Flows, Process Builder und Integrationen.

SalesForce-Tests

Die Herausforderung besteht darin sicherzustellen, dass ein Tester den kundenspezifischen Code prüft und nicht die integrierten Salesforce-Funktionen, die Salesforce bereits in seiner Vertrauens- und Freigabepipeline abdeckt.

Salesforce CRM basiert auf einer Plattformsprache namens ApexDie Plattform wird durch Lightning Web Components (LWC) im Frontend ergänzt. Sie verfügt über ein integriertes Unit-Test-Framework, mit dem Entwickler ihren Code vor der Bereitstellung validieren können.

Warum Salesforce-Tests?

Hier sind die wichtigsten Gründe, warum ich Salesforce-Tests für notwendig halte:

  • Es überprüft nach jeder Sandbox-Aktualisierung, ob die Konfiguration und der Apex-Code funktionsfähig sind.
  • Es überprüft, ob das fertige System die Geschäftsprozesse des Kunden durchgängig unterstützt.
  • Es bestätigt, dass der erste Build vor der Inbetriebnahme die vereinbarten Anforderungen erfüllt.
  • Es erkennt Probleme frühzeitig, solange sie noch einfach und kostengünstig zu beheben sind.
  • Funktionsablaufberichte, die auf dem Status von Testfällen basieren, helfen dem Team, die Anwendungsfunktionalität abzubilden.
  • Die Funktionen Flow Builder und Process Builder können auf Funktionsfähigkeit und Verhalten überprüft werden.
  • Mit Workflows können Sie die Funktionalität zeitbasierter Ereignisse wie Eskalationsregeln überprüfen.

Salesforce-Terminologie

  • Blitzerlebnis: Die aktuelle Standard-Benutzeroberfläche von Salesforce basiert auf Lightning Web Components; Salesforce Classic wird schrittweise abgeschafft und die meisten Organisationen migrieren zu Lightning.
  • Visuelle Kraft: Ein Legacy-Framework zum Erstellen benutzerdefinierter Benutzeroberflächen mit einer tagbasierten Auszeichnungssprache ähnlich wie HTML, das für ältere Anpassungen weiterhin unterstützt wird.
  • AppExchange: Der Online-Marktplatz von Salesforce, auf dem Benutzer benutzerdefinierte Anwendungen und Erweiterungen entdecken und installieren können.
  • Apex: Eine stark typisierte, objektorientierte Sprache, die zur Ausführung von Ablauf- und Transaktionssteuerungsanweisungen auf der Salesforce-Plattform verwendet wird.
  • Einstein 1 Plattform / Agentforce: Die KI-Schicht von Salesforce für prädiktive und generative Funktionen sowie autonome Agenten, die ebenfalls von der Qualitätssicherung validiert werden müssen.

Arten von Salesforce-Tests

Manuelle Prüfung

Manuelle Softwaretests decken die Salesforce.com-Anwendung mithilfe traditioneller Methoden ab. Das QA-Team kann manuelle Tests für Funktionstests, Happy-Path-Tests, Integrationstests, Regressionstests und Systemtests sowohl in Lightning Experience als auch in Salesforce Mobile einsetzen.

Automatisiertes Testen

Automatisierte Tests verwenden ein Programm, um eine Salesforce.com- oder Force.com-Anwendung zu testen. Gängige Automatisierungstools sind: Selenium, Provar, Copado Robotertests, Tricentis Testautomatisierung für Salesforce und Testsigma. Moderne Stacks integrieren zunehmend KI-gestützte, selbstheilende Locatoren, um Lightning-DOM-Änderungen zu absorbieren.

Teststufen in Salesforce

In diesem Salesforce-Test-Tutorial gelten typischerweise die folgenden Stufen:

Teststufen in Salesforce

Unit Tests

  • Durchgeführt von Apex-Entwicklern, die Testmethoden schreiben, welche ihre Klassen und Trigger testen.
  • Es wertet aus, wie viele Datensätze betroffen sind, damit der Code in der Zielumgebung zuverlässig ausgeführt werden kann.
  • Für den Einsatz von Apex-Code in der Produktion muss die gesamte Codeabdeckung mindestens 75 % betragen, und jeder Trigger muss eine Abdeckung von mindestens 1 % aufweisen.

Systemtest:

  • Durchgeführt von einem Team von Salesforce-Beratern.
  • Testet die technischen Prozesse des Systems von Anfang bis Ende.
  • Verwendet Testskripte, die auf spezifischen erwarteten Ausgaben basieren.
  • Behebt Probleme mit automatisierten Regeln wie Workflow-, Validierungs-, Zuweisungs- und Genehmigungsprozessen.

UAT-Tests:

  • Durchgeführt von den Geschäftsanwendern, die die Anwendung täglich nutzen werden.
  • Testet die Fähigkeit des Systems, Geschäftsprozesse zu unterstützen.
  • Folgt Testskripten, die auf realen Geschäftsszenarien basieren.
  • Das gewünschte Ergebnis ist die Bestätigung des Kunden, dass das System für den vorgesehenen Zweck geeignet ist.

Produktionstests:

  • Wiederholung der Systemtests in der Produktionsumgebung.
  • Überprüft, ob Konfiguration und Code korrekt von der Sandbox in die Produktionsumgebung übertragen wurden.
  • Sofern es die Zeit vor dem Start erlaubt, sollte der Kunde die UAT-Skripte nach der Bereitstellung erneut ausführen.

Regressionstests:

  • Das Hauptziel von Regressionstests Es geht darum festzustellen, ob neue Versionen Auswirkungen auf bestehende Benutzerprozesse haben.
  • Es wird nach jeder Verbesserung, Fehlerbehebung oder saisonalen Salesforce-Version (Frühling, Sommer, Winter) ausgeführt.
  • Der Benutzer stellt eine Liste von Änderungen bereit, die sich auf laufende Prozesse auswirken könnten, damit betroffene Abläufe erneut validiert werden können.

Salesforce-Testprozess

Der Testprozess bei Salesforce ähnelt dem Testen anderer webbasierter Anwendungen. Der Tester benötigt einen klaren Überblick über die im Projekt entwickelten anpassbaren Funktionen, damit der Fokus auf dem benutzerdefinierten Code und nicht auf den integrierten Funktionen von Salesforce liegt.

Entwickler und Tester sollten für ihre jeweiligen Zwecke Sandbox-Umgebungen (Developer, Developer Pro, Partial Copy, Full) nutzen. Getesteter Code aus der Sandbox wird über Change Sets, Salesforce DX oder DevOps-Tools wie Copado und Gearset in die Produktionsumgebung übernommen. Es wird vorausgesetzt, dass QA-Tester die grundlegenden Salesforce-Begriffe beherrschen, bevor sie dem Projekt beitreten.

Herausforderungen beim Salesforce-Testen

Salesforce-Tests sind kein einfacher Prozess. Tester stehen vor vielen Herausforderungen, darunter:

  • Das Testen fortgeschrittener Funktionen wie Lightning Web Components, Visualforce, Service Cloud Console und Experience Cloud-Sites ist komplex.
  • Teams müssen häufig ältere Classic-Tests für Lightning Experience und die Salesforce Mobile App neu erstellen oder umgestalten.
  • Manche Standardfunktionen können auch dann nicht entfernt werden, wenn sie nicht verwendet werden.
  • UI-Tests können fehlschlagen, wenn Sandboxes aktualisiert werden oder wenn saisonale Releases veröffentlicht werden.
  • Automatisierte Tests müssen in allen Sandbox-Umgebungen konsistent ausgeführt werden.
  • Die Erstellung stabiler Feld-Locators ist schwierig, da sich die Salesforce-Element-IDs zwischen den Organisationen unterscheiden und sich mit jeder neuen Version ändern.
  • Die Validierung von KI-Funktionen wie Einstein-Vorhersagen und Agentforce-Agenten erfordert neue datengetriebene und promptgesteuerte Ansätze.

Best Practice für Salesforce-Tests

  • Führen Sie Tests mit echten Benutzerprofilen und Berechtigungssätzen durch.
  • Erstellen Sie Testdaten, die die Funktionalität von Berichten und Dashboards validieren.
  • Kombinieren Sie Funktions-, UI-, Regressions- und Systemintegrationstests in jedem Releasezyklus.
  • Besonderes Augenmerk sollte auf die dynamische Natur von Lightning- und Visualforce-Seiten gelegt werden, da Elemente möglicherweise nicht gleichzeitig geladen werden; verwenden Sie explizite Wartezeiten.
  • Die Automatisierung sollte mit Tools wie diesen durchgeführt werden. Selenium, Provar, Tricentisoder Testsigma, gepaart mit selbstheilenden Locatoren.
  • Berücksichtigen Sie in jedem Testszenario sowohl positive als auch negative Datenströme.
  • Erstellen Sie Benutzerrollen, Profile und Berechtigungssätze in Testdaten, damit Arbeitsabläufe für jede Persona validiert werden können.

Rollen und Verantwortlichkeiten eines Salesforce-Testers

Zu den wichtigen Aufgaben und Verantwortlichkeiten von Salesforce-Testern gehören:

  • Durchführung von Funktionstests, um sicherzustellen, dass alle wichtigen Funktionen den Anforderungen entsprechen.
  • Erstellung sowohl positiver als auch negativer Testszenarien.
  • Durchführung von Äquivalenzzerlegung und Randwertanalyse.
  • Durch die Auseinandersetzung mit der Anwendung wird deren Funktionalität verstanden und eine Funktionskarte erstellt.
  • Aufrechterhaltung eines offenen Kommunikationskanals mit dem Entwicklungsteam.
  • Die für die Salesforce-Organisation entwickelten anpassbaren Funktionen verstehen.
  • Durchführung rollenbasierter Testfälle zur Sicherstellung der Datenkonsistenz.
  • Durchführung von Kompatibilitätstests bei der Integration von Salesforce mit Drittanbieteranwendungen.
  • Kenntnisse im Umgang mit Lasttest-Tools wie JMeter zur Validierung komplexer Abläufe, die inkonsistente Ergebnisse liefern können.
  • Praktische Kenntnisse in Apex, SOQL und Lightning-Komponenten.

Salesforce-Testautomatisierungstools

Die Durchführung automatisierter Funktionstests in Salesforce ist anspruchsvoll, da die meisten Testseiten dynamisch sind. Tester müssen ein robustes Automatisierungsframework entwickeln, das sowohl heute noch nützlich als auch für zukünftige Releases robust ist.

Nachfolgend habe ich die weit verbreiteten Salesforce-Testtools aufgelistet, die ich empfehle.

1) Tricentis Testautomatisierung für Salesforce

Ich schätze besonders, wie Tricentis Testautomatisierung für Salesforce Beschleunigt die Entwicklung robuster UI-Tests für Salesforce-Umgebungen. Die Smart Locators nutzen KI, um sich selbst zu reparieren und automatisch zu verbessern, wodurch der Wartungsaufwand minimiert und die Teststabilität über Lightning-Releases hinweg gewährleistet wird.

Tricentis

Merkmale:

  • End-to-End-Szenariovalidierung: Kunden können vollständige End-to-End-Szenarien validieren, die von ihrer Webanwendung bis zu Salesforce und zurück reichen.
  • Skalierbarkeit agiler Teams: Agile Teams mit unterschiedlichen Kompetenzprofilen skalieren ihre Testabläufe effizient mit Funktionen, die ihnen helfen, das Wachstum von Tests und Teams zu kontrollieren und zu steuern.
  • Apex Code Ausführung zur Validierung: Führen Sie Apex-Code in einem Testschritt aus, um Abfrageergebnisse zu validieren.
  • API-Testintegration: API-Tests lassen sich nahtlos in UI-Abläufe integrieren.

Besuchen Sie Tricentis >>


2) Testen Sie Sigma

Testen Sie Sigma ist eine codefreie Testautomatisierungsplattform, die das Testen von Salesforce vereinfacht, ohne dass tiefgreifende Apex-Kenntnisse erforderlich sind. Selenium Fachkompetenz. Ich fand den intuitiven Testdesignansatz besonders effektiv für Teams, die Standard- und benutzerdefinierte Salesforce-Konfigurationen nach Änderungen oder Bereitstellungen validieren, da er die Komplexität herkömmlicher Skripting-Frameworks beseitigt.

Testen Sie Sigma

Merkmale:

  • CodeWeniger Automatisierung für Salesforce-UI-Flows: Erstellen Sie Salesforce-Tests mit einfachen, englischsprachigen Schritten, ohne Apex schreiben zu müssen. Selenium Code. Ich habe ihn verwendet, um Teammitglieder mit unterschiedlichem technischen Hintergrund einzuarbeiten.
  • Testen von benutzerdefinierten Objekten und Workflows: Umfassende Unterstützung beim Testen von benutzerdefinierten Objekten, Workflows und Integrationen. Dies half mir sicherzustellen, dass organisationsspezifische Konfigurationen nach Plattformaktualisierungen korrekt funktionieren.
  • Datengesteuerte Testmöglichkeiten: Testen Sie systematisch verschiedene Benutzerrollen, Profile und Datensätze. Dies erwies sich als unschätzbar wertvoll für die Validierung des Verhaltens über verschiedene Berechtigungsstufen hinweg.
  • Abdeckung aller Szenarien: Unterstützt umfassende End-to-End-Szenarien, die Salesforce sowie externe Anwendungen oder APIs umfassen.
  • Detaillierte Berichte und Debugging-Protokolle: Erstellt umfassende Berichte und Protokolle, um durch Salesforce-Änderungen verursachte Probleme schnell zu identifizieren.

Besuchen Sie Testsigma >>

14 Tage kostenlose Testversion

Warum Salesforce-Testtools verwenden?

  • Sie helfen Ihnen, bis zu 75 % der Testzeit und einen erheblichen Teil der Automatisierungskosten einzusparen.
  • Sie bieten eine bessere Apex-Testausführung, detaillierte Testabdeckung und Klassenabdeckungsberichte.
  • Sie können branchenführende Automatisierungstools wie nutzen Selenium und JMeter.
  • Automatische Generierung von Testszenarien für verschiedene Umgebungen und mehrere Browser.
  • Zeichnen Sie Ihre Testfälle nahtlos auf und geben Sie sie wieder.
  • Automatisieren Sie alle Arten von Aufgaben vor und nach der Bereitstellung.
  • Trennen Sie die Daten aus dem Testskript und erweitern Sie sie mit mehreren Datensätzen.

Beispielhafte Salesforce-Testszenarien

  • Testfall 01: Erfassen Sie die Kontaktdaten des potenziellen Kunden oder Auftraggebers.
  • Testfall 02: Kontakte können als aktiv oder inaktiv markiert werden.
  • Testfall 03: Ein Unternehmen kann als Kunde oder potenzieller Kunde gekennzeichnet werden.
  • Testfall 04: Leads können über Web-to-Lead-Formulare erfasst werden.
  • Testfall 05: Der Preis in einem Angebot darf nicht null sein.
  • Testfall 06: Sobald ein Geschäft abgeschlossen ist, wird eine E-Mail versendet; nicht zustellbare E-Mails werden bearbeitet.
  • Testfall 07: Die Integration mit Drittanbietersoftware funktioniert einwandfrei.
  • Testfall 08: BillDie Dienste funktionieren wie erwartet.
  • Testfall 09: Keine Duplizierung von Datensätzen im Kontakt-, Opportunity- und Lead-Management.
  • Testfall 10: Mobile Workflows funktionieren in der Salesforce Mobile App wie erwartet.
  • Testfall 11: Unbefugte Benutzer haben keinen Zugriff auf Dateien oder geschützte Datensätze.

Wie KI und Einstein Reshaping Salesforce-Tests

KI ist bei Salesforce mittlerweile ein zentrales Testkriterium. Die Einstein 1 Plattform integriert prädiktive Bewertungen, generative Antworten und autonome Agentforce-Agenten in Sales und Service Cloud. Jede dieser Funktionen erfordert eine eigene Validierungsstrategie. Tester sollten datengetriebene Fälle entwickeln, die neben traditionellen UI-Abläufen auch die Vorhersagegenauigkeit, die korrekte Eingabeaufforderung und die Schutzmechanismen überprüfen.

Auf der Werkzeugseite setzen moderne Salesforce-Automatisierungsframeworks auf KI-gestützte, selbstheilende Locatoren, die Lightning-DOM-Änderungen zwischen Releases erkennen und Selektoren automatisch reparieren. TricentisProvar, Copado Robotic Testing und Testsigma bieten alle Varianten dieser Funktion. In Kombination mit synthetischen Testdaten und visuellen Regressionsprüfungen lässt sich eine hohe Testabdeckung ohne explodierenden Wartungsaufwand gewährleisten.

Salesforce-Tests: Kundenherausforderungen

Kunden sind oft nervös, wenn es um Salesforce-Tests geht, weil sie möglicherweise nicht wissen, wie man sie richtig durchführt. Dadurch entstehen Mythen, die von der Realität abweichen.

Hier sind einige von ihnen:

Kundenprobleme Lösung
Ich weiß nicht, wie man das Salesforce-System benutzt. Kunden müssen ihren Prozess testen, nicht die Funktionalität des Systems.
Wir können keine Tests durchführen, solange nicht alle unsere Daten im System vorhanden sind. Für den Test werden nur wenige Beispieldatensätze benötigt.
Ich habe keine freie Zeit, um meine tägliche Arbeit zu testen und zu verwalten. Halten Sie Kontakt zum Projektmanager und nehmen Sie während der Planungs- und Bauphase an regelmäßigen Besprechungen teil.

Häufig gestellte Fragen

Salesforce erfordert für die Bereitstellung in der Produktionsumgebung eine Apex-Codeabdeckung von mindestens 75 % und für jeden Trigger mindestens 1 %. Tests müssen erfolgreich ausgeführt werden und dürfen sich bei neuem Code nicht auf `seeAllData=true` verlassen.

Die meisten neuen Entwicklungen zielen auf Lightning Experience ab, die die Standardbenutzeroberfläche ist. Salesforce stellt Classic für viele Funktionen schrittweise ein, daher sollten Testpläne Lightning Web Components, Flow und Salesforce Mobile priorisieren, es sei denn, eine Kundenorganisation verwendet weiterhin Classic.

Ja. Selenium Das funktioniert für Salesforce, aber die Volatilität des Lightning-DOM macht reine XPath-Locators anfällig. Teams kombinieren üblicherweise Selenium mit dem Lightning Testing Service, benutzerdefinierten Wartezeiten und KI-gestützten selbstheilenden Locatoren oder mit Salesforce-spezifischen Tools wie Provar und Tricentis.

Validieren Sie Einstein-Vorhersagen anhand gelabelter Datensätze und geben Sie anschließend Vorhersagebereiche und Erklärungen an. Testen Sie für Agentforce die Eingabeaufforderungen, Schutzmechanismen, Aktionsaufrufe und Gesprächsverläufe. Kombinieren Sie Funktionsprüfungen mit Überprüfungen auf Verzerrungen, Halluzinationen und Sicherheit.

Tricentis Testautomatisierung für Salesforce, Provar, Copado Robotic Testing und Testsigma bieten KI-gestützte, selbstheilende Locatoren und intelligente Testgenerierung. Diese Funktionen gleichen Änderungen am Lightning-DOM während saisonaler Releases aus und reduzieren den Wartungsaufwand für Skripte erheblich.

Die Sandboxes „Developer“ und „Developer Pro“ enthalten ausschließlich Metadaten. Die Sandboxes „Partial Copy“ beinhalten Beispieldaten, und die Sandboxes „Full Copy“ spiegeln Produktionsdaten und Metadaten wider. Verwenden Sie „Full Copy“ oder „Partial Copy“ für Benutzerakzeptanztests (UAT) und Regressionstests und die Sandboxes „Developer“ für Unit- und Integrationstests.

Führen Sie nach jedem Sprint-Deployment, vor jedem saisonalen Salesforce-Release (Frühling, Sommer, Winter) und nach größeren Sandbox-Aktualisierungen Regressionstests durch. Priorisieren Sie die Kernprozesse für Vertrieb, Service und Integration und erweitern Sie die Testabdeckung anschließend auf KI-Funktionen und benutzerdefinierte Lightning-Komponenten.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: