Sobes.tech
Junior — Middle

Mikor ajánlott mock-objektumokat alkalmazni egységtesztekben a függőségek szimulálására?

sobes.tech MI

Válasz az MI-től

A mock-objektumokat egységtesztekben használják, amikor a tesztelt komponens el van választva a függőségeitől. Ez akkor hasznos, ha:

  • A függőségek összetettek vagy lassúak (pl. adatbázis, hálózat).
  • Instabilak vagy változékonyak.
  • Nehéz őket reprodukálni tesztkörnyezetben.

A mockok használatával kontrollálhatjuk a függőségek viselkedését, beállíthatjuk a várt válaszokat és ellenőrizhetjük az interakciókat.

Például, ha van egy osztályod, amely külső API-t hív, a tesztekben ezt a hívást helyettesítheted egy előre definiált adatokkal visszatérő mock objektummal, így a teszt gyors és kiszámítható lesz.

PHP-ben PHPUnit használatával:

$mock = $this->createMock(ExternalService::class);
$mock->method('fetchData')->willReturn(['key' => 'value']);

$service = new MyService($mock);
$result = $service->process();
$this->assertEquals('expected', $result);