A execução dos testes para usar o Magento php bin/magento dev:tests:run
leva muito tempo.
Existe uma maneira de executar os testes apenas para um módulo específico?
Eu sou um novato em testes (unitários), então tenha piedade.
magento2
unit-tests
Marius
fonte
fonte
all, unit, integration, integration-all, static, static-all, integrity, legacy, default
. E algumas opções gerais como-h, -q, ...
essa estão disponíveis para todos os comandos. Portanto, nada de especial sobre elesRespostas:
O Magento 2 usa a estrutura phpunit para executar o teste. Você pode executar o teste por tipo e módulo com o comando:
Por exemplo:
para executar o teste de unidade do Catalog , você precisa executar o comando
vendor/phpunit/phpunit/phpunit -c dev/tests/unit/phpunit.xml.dist app/code/Magento/Catalog/Test/Unit/
para executar o teste de integração do Catalog , você precisa executar
vendor/phpunit/phpunit/phpunit -c dev/tests/integration/phpunit.xml.dist dev/tests/integration/testsuite/Magento/Catalog
Atualmente, apenas o teste de unidade foi movido para os módulos. Também o teste de integridade estática e de integração está funcionando com todo o código magento.
fonte
php vendor/phpunit/phpunit/phpunit -c dev/tests/unit/phpunit.xml.dist vendor/magento/module-catalog/
A resposta de Kandy parece certa, mas nesse meio tempo eu encontrei uma maneira rápida e suja de fazê-lo.
Copiar
dev/tests/unit/phpunit.xml.dist
paradev/tests/unit/phpunit.xml
e substituircom
e comente as outras
directory
tags dentro da<testsuite>
tag.Quando terminar, reverta suas alterações ou remova
phpunit.xml
.fonte
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/
Os códigos principais do Magento são movidos para o caminho do fornecedor / magento.phpunit.xml
arquivo e coloque o caminho para o módulo que você deseja testar.apenas para adicionar que, usando o Phpstorm IDE, você pode definir a configuração de teste para o seu módulo e executá-la separadamente. Executando testes no PhpStorm
fonte