Reputation: 1298
I have a NetBeans project with PHPUnit tests that I am using for learning. I created it on my desktop PC using NetBeans 8.0.2 it worked fine, but when I imported the project on my notebook PHPUnit don't execute any tests.
This is the output window:
"C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\bin\phpunit.bat" "--colors" "--log-junit" "C:\Users\MARCOA~1\AppData\Local\Temp\nb-phpunit-log.xml" "--configuration" "C:\WebServer\Apache 2.2\htdocs\DataBaseTests\tests\phpunit.xml" "C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php" "--run=C:\WebServer\Apache 2.2\htdocs\DataBaseTests\tests"
Warning: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
Call Stack:
0.0016 130056 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
0.0385 398928 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
0.0386 402664 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
0.1218 887816 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
0.1910 1624632 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1910 1624648 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1911 1625712 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
0.1954 1626688 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
0.2026 1627056 9. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
0.2061 1627360 10. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
0.2229 1628168 11. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
Warning: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
Call Stack:
0.0016 130056 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
0.0385 398928 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
0.0386 402664 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
0.1218 887816 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
0.1910 1624632 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1910 1624648 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1911 1625712 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
0.1954 1626688 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
0.2026 1627056 9. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
0.2061 1627360 10. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
0.2343 1628632 11. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
Warning: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
Call Stack:
0.0016 130056 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
0.0385 398928 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
0.0386 402664 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
0.1218 887816 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
0.1910 1624632 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1910 1624648 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1911 1625712 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
0.1954 1626688 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
0.2026 1627056 9. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
0.2385 1627464 10. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP Warning: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
PHP Stack trace:
PHP 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
PHP 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
PHP 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
PHP 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
PHP 9. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP 10. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP 11. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP Warning: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
PHP Stack trace:
PHP 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
PHP 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
PHP 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
PHP 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
PHP 9. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP 10. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP 11. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP Warning: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
PHP Stack trace:
PHP 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
PHP 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
PHP 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
PHP 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
PHP 9. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP 10. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP Warni
Warning: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
Call Stack:
0.0016 130056 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
0.0385 398928 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
0.0386 402664 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
0.1218 887816 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
0.1910 1624632 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1910 1624648 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1911 1625712 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
0.1954 1626688 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
0.3064 1627160 9. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
Warning: array_merge(): Argument #2 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 115
Call Stack:
0.0016 130056 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
0.0385 398928 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
0.0386 402664 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
0.1218 887816 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
0.1910 1624632 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1910 1624648 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1911 1625712 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
0.3851 1626672 8. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
Warning: Invalid argument supplied for foreach() in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 84
Call Stack:
0.0016 130056 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
0.0385 398928 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
0.0386 402664 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
0.1218 887816 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
0.1910 1624632 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
0.1910 1624648 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHPUnit 4.5.0 by Sebastian Bergmann and contributors.
Configuration read from C:\WebServer\Apache 2.2\htdocs\DataBaseTests\tests\phpunit.xml
Time: 684 ms, Memory: 2.25Mb
No tests executed!
Generating code coverage report in HTML format ... done
ng: array_merge(): Argument #1 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 143
PHP Stack trace:
PHP 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
PHP 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
PHP 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
PHP 8. NetBeansSuite::rglob() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
PHP 9. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:143
PHP Warning: array_merge(): Argument #2 is not an array in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 115
PHP Stack trace:
PHP 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
PHP 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
PHP 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 7. NetBeansSuite::toRun() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:84
PHP 8. array_merge() C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php:115
PHP Warning: Invalid argument supplied for foreach() in C:\Program Files\NetBeans 8.0.2\php\phpunit\NetBeansSuite.php on line 84
PHP Stack trace:
PHP 1. {main}() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\phpunit:36
PHP 3. PHPUnit_TextUI_Command->run() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:104
PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\TextUI\Command.php:126
PHP 5. ReflectionMethod->invoke() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
PHP 6. NetBeansSuite::suite() C:\WebServer\Apache 2.2\htdocs\DataBaseTests\vendor\phpunit\phpunit\src\Runner\BaseTestRunner.php:89
Concluído.
I am using Composer. I already installed the dependencies, pointed the phpunit executable on the bin folder in NetBeans configuration, and done all the same configuration from the project on my desktop that was working fine, but I still get this error.
EDIT:
The files in C:\WebServer\Apache 2.2\htdocs\DataBaseTests\tests are
C:\WebServer\Apache 2.2\htdocs\DataBaseTests\tests\Marco\Test\Manager\InvoiceManagerTest.php
C:\WebServer\Apache 2.2\htdocs\DataBaseTests\tests\Marco\Test\Manager\PDOMock.php
C:\WebServer\Apache 2.2\htdocs\DataBaseTests\tests\Marco\Test\Model\InvoiceTest.php
Upvotes: 1
Views: 627
Reputation: 5926
I found that the shell script version (bin/phpunit.sh) does not work with Netbeans. Choose libexec/phpunit.phar instead.
I encountered 2 problems. The first has the symptom of 'no tests found' and prints a similar error if you try the command:
"/usr/local/bin/php" "/usr/local/Cellar/phpunit/4.3.4/bin/phpunit" "--colors" "--log-junit" "/var/folders/vc/r2k02djd5gg664g0v7ggm8l40000gn/T/nb-phpunit-log.xml" "--bootstrap" "/Users/...bootstrap.php.cache" "--configuration" "/Users/.../app/phpunit.xml.dist" "/Applications/NetBeans/NetBeans 8.0.2.app/Contents/Resources/NetBeans/php/phpunit/NetBeansSuite.php" "--run=/Users/...Tests/Controller/DefaultControllerTest.php"
This was fixed by using phpunit/4.3.4/libexec/phpunit.phar.
The second problem I encountered, but with a different symptom was in using phpunit 5.0.0. I used the phar version as above but it appears to have a bug https://github.com/sebastianbergmann/phpunit/issues/1887. It returns
Parse error: syntax error, unexpected '.', expecting '&' or variable (T_VARIABLE) in phar:///usr/local/Cellar/phpunit/5.0.0/libexec/phpunit-5.0.0.phar/phar/phpunit-mock-objects/Framework/MockObject/Builder/InvocationMocker.php on line 82
Upvotes: 1