Automatiserede tests

Hver ændring i Business Central skal skabe værdi – ikke bekymring. Med automatiserede tests får I en sikkerhedsline, der fanger regressioner, før de rammer brugerne. Vi udpeger jeres kritiske flows (fx O2C og P2P), omsætter dem til genbrugelige testscenarier og kobler dem på jeres build- og releaseproces, så kvalitet bliver en vane – ikke en heldig omstændighed. Resultatet er forudsigelige opdateringer, kortere testcyklusser og dokumenteret tryghed ved hver release. I får transparens via rapporter og alarmer, og en test-suite der følger med, når forretningen udvikler sig. Sammen holder vi jer på “standard først”, og tester målrettet dér, hvor I har tilpasninger og mest risiko.

Når løsningen udvikler sig, skal den stadig fungere

I Business Central ændrer ting sig løbende. Nye funktioner, nye integrationer og løbende opdateringer fra Microsoft.

I moderne løsninger hænger alt sammen.

En ændring ét sted kan påvirke noget helt andet et andet sted.
Det opstår grundlæggende, fordi løsningen er blevet udviklet over tid – med mange afhængigheder undervejs. Kravene ændrer sig, nye behov opstår, og løsningen tilpasses løbende.

Samtidig bliver mindre tilpasninger ofte udført af forskellige udviklere over tid.
Det er en naturlig del af udviklingen, men det betyder også, at strukturen i koden gradvist kan blive mindre ensartet og mere kompleks.

Jo mere løsningen vokser, desto sværere bliver det at have det fulde overblik.
Selv små ændringer kan derfor få konsekvenser, der først viser sig, når løsningen er taget i brug.

Automatiserede tests ændrer det billede.

De sikrer ikke kun, at funktionaliteten virker – de er også med til at holde løsningen sund over tid.

Når tests bliver en fast del af udviklingen, bliver det tydeligt, hvor løsningen kan forbedres.
Det fører ofte til refaktorering og en mere struktureret kodebase, som gør løsningen mindre sårbar og lettere at arbejde videre med.

Historisk udvikling vs. kontinuerlige tests

Når tests ikke følger med

Typisk oplevelse:

  • Ændringer påvirker uforudsete dele af løsningen

  • Test er manuel og afhænger af den enkelte udvikler

  • Tidligere funktionalitet bliver ikke konsekvent verificeret

  • Fejl opdages først, når brugerne rammer dem

  • Løsningen bliver gradvist mere sårbar

Når tests er en del af løsningen

Det betyder i praksis:

  • Ændringer verificeres på tværs af hele løsningen

  • Tests kører automatisk – hver gang noget ændres

  • Eksisterende funktionalitet beskyttes systematisk

  • Fejl opdages før de når brugerne

  • Løsningen forbliver stabil – også når den udvikler sig

Automatiserede tests ændrer den måde, man arbejder med løsningen på.

I stedet for at teste det, man lige har ændret, bliver hele løsningen løbende verificeret. De vigtigste processer bliver gennemgået igen og igen. Dette uden at være afhængige af, hvem der husker hvad.

Samtidig bliver det tydeligt, hvordan løsningen faktisk fungerer.

Når tests beskriver konkrete scenarier, bliver de en fælles reference for både udviklere og forretning. Det skaber en fælles forståelse af, hvad der skal ske – og hvad der forventes i praksis.

Tests bliver en naturlig del af dokumentationen for, hvordan løsningen skal fungere.

Vil du høre mere om Automatiserede tests?

Keep Current og Automatiserede tests sikrer stabiliteten i din PTE app

Automatiserede tests i Microsoft Dynamics 365 Business Central er kodede testscenarier, der eksekveres automatisk for at verificere, at funktionalitet, tilpasninger og integrationer virker som forventet. Testene skrives som AL test codeunits, der bruger Microsofts Test Toolkit og Test Runner, og kan dække alt fra enkeltfunktioner (unit tests) til hele forretningsflows som Quote-to-Cash og Procure-to-Pay (integration tests). De afvikles ved hver kodeændring eller release og afløser manuel test, som er tidskrævende og ikke skalerer med hyppige Business Central-opdateringer.

Microsoft Test Toolkit er et indbygget framework i Business Central, der gør det muligt at skrive, eksekvere og rapportere på automatiserede tests skrevet i AL. Toolkittet består af Test Runner, Test Isolation, Permission Mock, Library Assert og en samling af genbrugelige test libraries fra Microsoft. Det understøtter både unit tests, integration tests og scenario tests, og integreres direkte med Visual Studio Code, AL-Go for GitHub og Azure DevOps Pipelines til CI/CD-flows.

Regression test er automatiseret verifikation af, at eksisterende funktionalitet stadig virker, efter der er foretaget ændringer i koden, opdateringer fra Microsoft eller ny extension er installeret. I Business Central er regression test særligt kritisk, fordi Microsoft udruller to major releases om året (april og oktober), og hver release kan påvirke tilpasninger, PTE-apps og integrationer. En automatiseret regressionstest-suite kører hele forretningskritiske flows igennem i et testmiljø før produktion og fanger fejl, før slutbrugerne rammer dem.

Automatiserede tests prioriteres på forretningskritiske flows, tilpasninger og integrationer, ikke på Microsofts standardfunktionalitet, som allerede testes af Microsoft. Typiske områder er Quote-to-Cash (tilbud, ordre, levering, fakturering, betaling), Procure-to-Pay (rekvisition, indkøbsordre, varemodtagelse, 3-way match), lagerstyring, produktion, finansafslutning, momsindberetning og alle integrationer til eksterne systemer som e-commerce, EDI, lager-WMS og betalingsplatforme.

Unit tests verificerer en enkelt funktion eller codeunit isoleret, typisk uden databasekald eller afhængighed af andre moduler, og kører på millisekunder. Integration tests verificerer samspillet mellem flere codeunits, tabeller og moduler i Business Central, fx hele Quote-to-Cash-flowet fra salgsordre til finanspostering. Unit tests fanger logiske fejl tidligt i udviklingen, mens integration tests fanger fejl i samspillet mellem komponenter og kører typisk i CI/CD-pipelines før release.

Etablering af automatiseret test til Business Central koster typisk mellem 75.000 og 500.000 kr. afhængigt af antal processer, kompleksiteten i tilpasninger og integrationer samt det ønskede dækningsniveau. Setup omfatter analyse af kritiske flows, opbygning af testbibliotek i AL, konfiguration af Test Runner, integration med CI/CD-pipeline og dokumentation. Løbende vedligehold udgør typisk 10-20% af setup-omkostningen om året. CURABIS leverer fast pris efter en indledende vurdering af eksisterende kodebase og testbehov.

Keep Current er en vedligeholdelsesservice, der automatisk tilpasser PTE-apps (Per Tenant Extensions) og kundespecifikke extensions til Microsofts to årlige Business Central-releases. Servicen sikrer, at apps forbliver kompatible med nye versioner, at deprecated API'er udskiftes, og at breaking changes håndteres før release. CURABIS leverer Keep Current sammen med automatiserede tests, så hver release valideres mod hele løsningens kritiske flows før idriftsættelse i produktion.

Automatiserede tests integreres i en Business Central CI/CD-pipeline via AL-Go for GitHub eller Azure DevOps Pipelines. Ved hver pull request bygges extension-pakken, og hele testbiblioteket eksekveres automatisk mod et frisk Business Central-testmiljø. Testresultater rapporteres tilbage som status checks, og deployment til produktion blokeres, hvis tests fejler. Det betyder, at hver kodeændring valideres, før den når brugerne, og at Microsofts halvårlige opdateringer kan testes i forvejen mod den fulde løsning.