Sobes.tech
Senior

Ako vyriešili problém duplikácie kódu v testoch?

sobes.tech AI

Odpoveď od AI

Na riešenie problému duplikácie kódu v testoch sa používajú rôzne prístupy:

  • Oddelenie spoločných funkcií a metód: opakujúce sa akcie sa presúvajú do pomocných funkcií alebo metód, ktoré sa volajú z rôznych testov.
  • Použitie návrhových vzorov: napríklad vzor Page Object v UI testoch pomáha enkapsulovať interakciu s prvkami rozhrania, čím sa znižuje duplikácia.
  • Parametrizácia testov: umožňuje spustiť ten istý test s rôznymi vstupnými dátami, čím sa vyhýba kopírovaniu kódu.
  • Konfigurácia fixture a setup/teardown metód: spoločná príprava a čistenie dát sa vykonáva centralizovane.

Príklad v Pythone s pytest a parametrizáciou:

import pytest

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

@pytest.mark.parametrize("a,b,expected", [
    (1, 2, 3),
    (5, 7, 12),
    (0, 0, 0),
])
def test_add(a, b, expected):
    assert add(a, b) == expected

Tento prístup znižuje množstvo opakovaného kódu a uľahčuje údržbu testov.