PHP:
Scrivere test
Come fare:
PHP Nativo - PHPUnit
Uno strumento ampiamente utilizzato per i test in PHP è PHPUnit. Installalo tramite Composer:
composer require --dev phpunit/phpunit ^9
Scrivere un test semplice:
Crea un file CalculatorTest.php
in una directory tests
:
use PHPUnit\Framework\TestCase;
// Assumendo che tu abbia una classe Calculator che somma numeri
class CalculatorTest extends TestCase
{
public function testAdd()
{
$calculator = new Calculator();
$this->assertEquals(4, $calculator->add(2, 2));
}
}
Esegui i test con:
./vendor/bin/phpunit tests
Esempio di output:
PHPUnit 9.5.10 di Sebastian Bergmann e contributori.
. 1 / 1 (100%)
Tempo: 00:00.005, Memoria: 6.00 MB
OK (1 test, 1 asserzione)
Librerie di Terze Parti – Mockery
Per test complessi, inclusi gli oggetti mock, Mockery è una scelta popolare.
composer require --dev mockery/mockery
Integrare Mockery con PHPUnit:
use PHPUnit\Framework\TestCase;
use Mockery as m;
class ServiceTest extends TestCase
{
public function tearDown(): void
{
m::close();
}
public function testServiceCallsExternalService()
{
$externalServiceMock = m::mock(ExternalService::class);
$externalServiceMock->shouldReceive('process')->una volta()->eRitorna('risultato simulato');
$service = new Service($externalServiceMock);
$result = $service->execute();
$this->assertEquals('risultato simulato', $result);
}
}
Per eseguire, utilizza lo stesso comando PHPUnit di sopra. Mockery consente oggetti mock espressivi e flessibili, facilitando il test delle interazioni complesse all’interno della tua applicazione.