PHP:
Tests Schreiben
Wie:
Native PHP – PHPUnit
Ein weit verbreitetes Werkzeug für Tests in PHP ist PHPUnit. Installieren Sie es über Composer:
composer require --dev phpunit/phpunit ^9
Einen einfachen Test schreiben:
Erstellen Sie eine Datei CalculatorTest.php
im Verzeichnis tests
:
use PHPUnit\Framework\TestCase;
// Angenommen, Sie haben eine Calculator-Klasse, die Zahlen addiert
class CalculatorTest extends TestCase
{
public function testAdd()
{
$calculator = new Calculator();
$this->assertEquals(4, $calculator->add(2, 2));
}
}
Führen Sie die Tests mit folgendem Befehl aus:
./vendor/bin/phpunit tests
Beispiel-Ausgabe:
PHPUnit 9.5.10 von Sebastian Bergmann und Mitwirkenden.
. 1 / 1 (100%)
Zeit: 00:00.005, Speicher: 6.00 MB
OK (1 Test, 1 Behauptung)
Drittanbieter-Bibliotheken – Mockery
Für komplexe Tests, einschließlich des Mockings von Objekten, ist Mockery eine beliebte Wahl.
composer require --dev mockery/mockery
Integration von Mockery mit 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')->once()->andReturn('gemocktes Ergebnis');
$service = new Service($externalServiceMock);
$result = $service->execute();
$this->assertEquals('gemocktes Ergebnis', $result);
}
}
Zum Ausführen verwenden Sie denselben PHPUnit-Befehl wie oben. Mockery ermöglicht ausdrucksstarke und flexible Mock-Objekte, was das Testen von komplexen Interaktionen innerhalb Ihrer Anwendung erleichtert.