Salesforce DevOps Woordenlijst

Apex Test Class

Productiedeployments vereisen dat Apex-testklassen draaien en slagen; dekking overslaan of manipuleren is een van de meest voorkomende verrassingen op releasedag.

Definitie

Een Apex-testklasse is een klasse geannoteerd met @isTest die testmethoden bevat die andere Apex-code uitoefenen; Salesforce vereist minstens 75% org-brede testdekking, waarbij geen enkele trigger onbedekt mag blijven, voordat metadata met Apex naar productie kan deployen, hoewel sandboxes en scratch orgs dit niet op dezelfde manier afdwingen. Testmethoden draaien standaard tegen een verse, geïsoleerde kopie van de orgdata, niet tegen echte records, tenzij een methode expliciet is gemarkeerd met @isTest(SeeAllData=true), wat verklaart waarom tests die stilzwijgend afhankelijk zijn van orgdata lokaal slagen maar falen in een schone CI/CD-pipeline. Dekkingspercentage alleen garandeert niet dat een test zinvol is: tests zonder assertions die alleen bestaan om de drempel van 75% te halen, komen door de deploygate terwijl ze niets testen, een veelvoorkomende manier waarop “groene” pipelines toch kapotte logica uitleveren. Apex-tests dekken bovendien alleen code, nooit het klikpad, wat verklaart waarom connectors voor UI-testtools zoals Provar op de roadmap van Serpent staan. Onze CI/CD-pipelinegids behandelt het uitvoeren van Apex-tests als onderdeel van een build.

In de praktijk

Hoe het werkt in Serpent

Serpent voert Apex-tests uit als onderdeel van preflight voordat een deployment live gaat, niet erna, zodat een dekkings- of assertion-fout de release blokkeert in plaats van in productie aan het licht te komen. Testresultaten en logs blijven gekoppeld aan de taak die ze veroorzaakte, zodat fouten herleidbaar zijn naar de wijziging die ze veroorzaakte. Zie releasebeheer in Serpent voor hoe preflight-checks werken.

Serpent voert een Apex-testklasse uit tegen een gekoppelde Salesforce-org vanuit een werkitem

Start gratis. Geen creditcard, geen installatie, geen verplichting.

Binnen 15 minuten ingericht. Geen DevOps-aanwerving nodig.

Benieuwd naar sneller releasen voordat je instapt? Laten we praten

Vrijblijvend.