FAGPORTALEN

Enhedstest, integrationstest, UAT

It A · STX · A-niveau · Systemudvikling og DevOps

💻 Enhedstest, integrationstest, UAT

Test-pyramiden (Mike Cohn 2009): Mange enhedstest (unit tests) → færre integrationstest → endnu færre E2E (end-to-end) tests → få brugbarhedstests (UAT).

Unit test (enhedstest): tester ÉN funktion eller klasse i isolation. Hurtige (millisekunder). Mange tests (1.000+). Bruger mocks for afhængigheder.

Eksempler — Python pytest: def test_add(): assert add(2, 3) == 5.

JavaScript Jest: test('adds 1+2 to equal 3', () => { expect(sum(1, 2)).toBe(3); }).

Java JUnit: @Test public void testAdd() { assertEquals(5, calculator.add(2, 3)); }.

Test-Driven Development (TDD): Red-Green-Refactor. Skriv test først (fejler — rød). Skriv kode der består (grøn). Forbedr kode (refactor). Kent Beck pioner.

Integrationstest: tester at MULTIPLE komponenter arbejder sammen. Eksempel: API-endpoint kalder database korrekt. Langsomere end unit (sekunder). Færre tests. Brug rigtige databaser (test-instans).

End-to-End test (E2E): tester hele systemet fra brugerens perspektiv. Cypress, Playwright, Selenium. Eksempel: "log ind → navigér til side → klik knap → bekræft resultat". Langsomste (minutter). Færreste tests.

UAT (User Acceptance Testing): rigtige brugere tester før produktions-deployment. Verificerer at systemet opfylder forretningskrav. Sker typisk i staging-miljø.

Test coverage: % af kode dækket af tests. Mål 70-80% er typisk. Tools: Coverage.py (Python), Jest coverage.

Performance test: belastningstest (load testing — JMeter, k6). Hvor mange bruge

Læringsmål

Sådan kan du arbejde med emnet

Arbejd iterativt med prototyper og dokumentation. Test, evaluér og dokumentér.

Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.

Prøv Fagportalen gratis

🤖 Denne side er skrevet med kunstig intelligens og fagligt gennemgået af Fagportalen, som har det redaktionelle ansvar. Finder du en fejl, så skriv til support@fagportalen.dk.