Przeprowadzenie testów używania Magento php bin/magento dev:tests:run
zajmuje dużo czasu.
Czy istnieje sposób na uruchomienie testów tylko dla określonego modułu?
Jestem noobem w testach (jednostkowych), więc zmiłuj się.
magento2
unit-tests
Marius
źródło
źródło
all, unit, integration, integration-all, static, static-all, integrity, legacy, default
. Niektóre ogólne opcje-h, -q, ...
są dostępne dla wszystkich poleceń. Więc nie ma w nich nic specjalnegoOdpowiedzi:
Magento 2 używa środowiska phpunit do uruchamiania testu. Możesz uruchomić test według typu i modułu za pomocą polecenia:
Na przykład:
aby uruchomić test jednostkowy dla katalogu , musisz uruchomić polecenie
vendor/phpunit/phpunit/phpunit -c dev/tests/unit/phpunit.xml.dist app/code/Magento/Catalog/Test/Unit/
aby uruchomić test integracji dla katalogu , musisz uruchomić
vendor/phpunit/phpunit/phpunit -c dev/tests/integration/phpunit.xml.dist dev/tests/integration/testsuite/Magento/Catalog
Obecnie tylko testy jednostkowe zostały przeniesione do modułów. Również test integralności statycznej i integralności działa z całym kodem magento.
źródło
php vendor/phpunit/phpunit/phpunit -c dev/tests/unit/phpunit.xml.dist vendor/magento/module-catalog/
Odpowiedź Kandy'ego wygląda jak droga, ale w międzyczasie znalazłem szybki i brudny sposób na zrobienie tego.
Skopiować
dev/tests/unit/phpunit.xml.dist
dodev/tests/unit/phpunit.xml
i zastąpićz
i komentuj pozostałe
directory
tagi wewnątrz<testsuite>
tagu.Po zakończeniu przywróć zmiany lub usuń je
phpunit.xml
.źródło
vendor/phpunit/phpunit/phpunit -c dev/tests/unit/phpunit.xml.dist app/code/Magento/Catalog/Test/Unit/
php vendor/phpunit/phpunit/phpunit -c dev/tests/unit/phpunit.xml.dist vendor/magento/module-catalog/
Główne kody Magento zostały przeniesione na ścieżkę sprzedawca / magento.phpunit.xml
plik i umieść ścieżkę do modułu, który chcesz przetestować.żeby dodać, że używając Phpstorm IDE możesz zdefiniować konfigurację testową dla swojego modułu i uruchomić go osobno. Uruchamianie testów w PhpStorm
źródło