Dep. Comercial +40 365-882.777 +40 722-241.273 Lun-Vin: 10:00-18:00
View Categories

Cum scriu teste automate (unit și integrare) în Magento 2?

< 1 minut de citit

Magento 2 suportă teste unitare, de integrare, funcționale și statice, organizate sub dev/tests/. Iată principiile de bază pentru a scrie un test.

Notă: versiunile actuale folosesc PHPUnit 9/10, deci clasele de test extind PHPUnit\Framework\TestCase (nu vechiul PHPUnit_Framework_TestCase), iar metodele setUp()/tearDown() au tipul de return : void.

Test unitar

Plasează testele în app/code/<Vendor>/<Module>/Test/Unit/. Un test unitar izolează o clasă și își creează dependențele ca mock-uri (nu folosește baza de date). Exemplu de schelet:

namespace Vendor\Module\Test\Unit;

use PHPUnit\Framework\TestCase;

class ExampleTest extends TestCase
{
    protected function setUp(): void
    {
        // inițializează obiectul testat cu dependențe mock
    }

    public function testSomething(): void
    {
        $this->assertTrue(true);
    }
}

Test de integrare

Plasează testele în Test/Integration/. Acestea rulează pe o instanță Magento de test și necesită o bază de date dedicată, configurată în dev/tests/integration/etc/install-config-mysql.php. Evită folosirea directă a ObjectManager::getInstance() în cod de producție; în teste de integrare este acceptabil prin framework-ul de testare.

Pentru codul complet și exemple actualizate, consultă ghidul de testare Adobe Commerce.

Actualizat la 26/07/2026