Developers/Unit Testing
From PartKeepr Wiki
Contents
[hide]Introduction
Most PartKeepr tests are actually functional tests. Because we do automated testing using Travis CI, you need to specify your test database prior executing phpunit:
# Specifies the database connection to use. Other choices are mysql and pgsql as specified in [https://github.com/partkeepr/PartKeepr/blob/sf2migration/app/config/config_test.yml config_test.yml] export SYMFONY__TESTDB=sqlite vendor/bin/phpunit -c app/
You can also specify a test file by appending it to the command line:
vendor/bin/phpunit -c app/ src/PartKeepr/UnitBundle/Tests/Model/UnitTest.php
Since the functional tests use quite some disk I/O, it is recommended that you place your files on a SSD for unit testing (8 seconds vs. several minutes).
Common Issues
Fatal error: Call to undefined method PHPUnit_TextUI_TestRunner::printVersionString()
This might happen if you are using a local PHPUnit installation. You should use the phpunit version installed in
vendor/bin/phpunit
Unable to find file "@PartKeeprFrontendBundle/Resources/public/js/"
Sometimes the cache messes up unit tests, as we are doing functional tests. You should regenerate the environment.