Sto lavorando con un'installazione Enterprise Edition 1.13.1 (anche se Community Edition avrebbe lo stesso problema) e stiamo installando dipendenze tramite compositore dove sono disponibili. Ho installato l'estensione Ecomdev_PhpUnit di Ivan tramite il compositore che ha acquistato tutte le normali dipendenze phpunit. Ho anche copiato phpunit.xml.dist dal fornitore / ivanchepurnyi / ecomdev_phpunit nella directory principale dei miei progetti.
Quando ho eseguito i test delle unità per la prima volta, ho ricevuto il seguente errore:
The test was skipped, since vfsStream component is not installed. Try install submodules required for this functionality
Successivamente ho aggiunto composer.json
ed eseguito la seguente voce request-dev composer update
:
"mikey179/vfsStream": ">=1.2.0",
Tuttavia, PHPUnit si lamenta ancora che vfsStream non sia installato.
Esaminando il repository GitHub per l'estensione Ecomdev_PHPUnit sembra che una patch sia stata unita per consentire il caricamento automatico di libvsfstream quando si usa il compositore . Tuttavia, questa sembra una soluzione parziale poiché il caricatore automatico del compositore non è incluso da nessuna parte, quindi la chiamata class_exists non riesce ancora.
Posso modificare /vendor/ivanchepurnyi/ecomdev_phpunit/app/code/community/EcomDev/PHPUnit/bootstrap.php:41 per includere il caricatore automatico del compositore durante il bootstrap (o copiare il bootstrap.php in un'altra posizione nel mio progetto e modificarlo) . È questa la soluzione migliore a questo problema o c'è una funzione in Composer o Ecomdev_PhpUnit che mi manca?