Salesforce-DevOps-Glossar

Apex Test Class

Produktions-Deployments erfordern, dass Apex-Testklassen laufen und bestehen; das Überspringen oder Manipulieren der Abdeckung ist eine der häufigsten Überraschungen am Release-Tag.

Definition

Eine Apex-Testklasse ist eine mit @isTest annotierte Klasse, die Testmethoden enthält, die anderen Apex-Code ausführen; Salesforce verlangt mindestens 75 % organisationsweite Testabdeckung, wobei kein einzelner Trigger unabgedeckt bleiben darf, bevor Metadaten mit Apex in die Produktion deployt werden können, auch wenn Sandboxes und Scratch-Orgs dies nicht auf dieselbe Weise erzwingen. Testmethoden laufen standardmäßig gegen eine frische, isolierte Kopie der Org-Daten, nicht gegen echte Datensätze, sofern eine Methode nicht explizit mit @isTest(SeeAllData=true) markiert ist, weshalb Tests, die still von Org-Daten abhängen, lokal bestehen, aber in einer sauberen CI/CD-Pipeline fehlschlagen. Die Abdeckungsquote allein garantiert nicht, dass ein Test aussagekräftig ist: Tests ohne Assertions, die nur existieren, um die 75-Prozent-Schwelle zu erreichen, bestehen das Deploy-Gate, ohne etwas zu testen, ein häufiger Weg, wie „grüne“ Pipelines trotzdem kaputte Logik ausliefern. Apex-Tests decken zudem nur Code ab, niemals den Klickpfad, weshalb Connectoren für UI-Testtools wie Provar auf der Roadmap von Serpent stehen. Unser CI/CD-Pipeline-Leitfaden behandelt das Ausführen von Apex-Tests als Teil eines Builds.

In der Praxis

So funktioniert es in Serpent

Serpent führt Apex-Tests als Teil des Preflights aus, bevor ein Deployment ausgeliefert wird, nicht danach, sodass ein Abdeckungs- oder Assertion-Fehler das Release blockiert, statt erst in der Produktion aufzufallen. Testergebnisse und Logs bleiben an die Aufgabe angehängt, die sie ausgelöst hat, sodass Fehler bis zur verursachenden Änderung zurückverfolgt werden können. Siehe Release-Management bei Serpent für die Funktionsweise der Preflight-Checks.

Serpent führt eine Apex-Testklasse gegen eine verbundene Salesforce-Org aus einem Work Item heraus aus

Kostenlos starten. Keine Kreditkarte, keine Installation, keine Verpflichtung.

In unter 15 Minuten eingerichtet. Keine DevOps-Einstellung nötig.

Neugierig auf schnelleres Shipping, bevor Sie einsteigen? Sprechen wir

Unverbindlich.