Enhetstesting

Som IT-utvikler er det viktig å skrive kode som fungerer som den skal. Enhetstesting (unit testing) er en metode for å teste de minste delene av koden din – enhetene – for å sikre at de fungerer som forventet. Tenk på det som å teste hver enkelt Lego-kloss før du bygger et stort slott.

Hva er en enhet?

En enhet kan være en funksjon, en metode, en klasse eller et modul. Det viktigste er at enheten er liten og isolert, slik at den kan testes uavhengig av andre deler av koden.

Hvorfor er enhetstesting viktig?

Hvordan skrive enhetstester

  1. Isoler enheten: Skill enheten fra resten av koden.
  2. Definer test case: Beskriv hva enheten skal gjøre i en gitt situasjon.
  3. Skriv testkode: Skriv kode som kjører enheten med test case og verifiserer resultatet.

Eksempel

La oss si at du har en funksjon summer(a, b) som skal returnere summen av to tall. En enhetstest for denne funksjonen kan se slik ut:

import unittest

def summer(a, b):
  return a + b

class TestSummer(unittest.TestCase):
  def test_summer_positive_tall(self):
    self.assertEqual(summer(2, 3), 5)

  def test_summer_negative_tall(self):
    self.assertEqual(summer(-2, 3), 1)

if __name__ == '__main__':
  unittest.main()

I dette eksempelet definerer vi to test cases: en for positive tall og en for negative tall. assertEqual-metoden sjekker om resultatet av summer(a, b) er lik det forventede resultatet.

Verktøy for enhetstesting

Det finnes mange verktøy som kan hjelpe deg med å skrive og kjøre enhetstester, for eksempel:

Viktig å huske

Som IT-utvikler er enhetstesting en viktig del av verktøykassen din. Det hjelper deg å skrive bedre kode, redusere feil og levere programvare av høy kvalitet.


Relaterte kompetansemål