drupal/core/tests
Lee Rowlands 9d552cad6c
Issue #2926309 by vaplas, alexpott, mpdonadio, tacituseu, Mixologic: Random fail due to APCu not being able to allocate memory
2018-01-04 07:37:32 +10:00
..
Drupal Issue #2926309 by vaplas, alexpott, mpdonadio, tacituseu, Mixologic: Random fail due to APCu not being able to allocate memory 2018-01-04 07:37:32 +10:00
TestSuites Issue #2928249 by alexpott, mondrake: Introduce a PHPUnit 6+ compatibility layer for Drupal\Tests\Listeners classes 2017-12-13 06:55:11 +10:00
fixtures Issue #2728579 by Mile23, neclimdul, Munavijayalakshmi, klausi, dawehner: Explicitly skip @requires module in PHPUnit Kernel and Browser tests 2017-09-25 13:07:02 +01:00
README.md Issue #2864690 by renatog, sandeepscs, cilefen: Fix typos in core README files 2017-04-08 16:18:38 -04:00
bootstrap.php Issue #2927806 by alexpott, mondrake, jibran, Mile23: Use PHPUnit 6 for testing when PHP version >= 7.2 2017-12-22 12:47:46 +00:00

README.md

Running tests

Functional tests

  • Start PhantomJS:
    phantomjs --ssl-protocol=any --ignore-ssl-errors=true ./vendor/jcalderonzumba/gastonjs/src/Client/main.js 8510 1024 768 2>&1 >> /dev/null &
    
  • Run the functional tests:
    export SIMPLETEST_DB='mysql://root@localhost/dev_d8'
    export SIMPLETEST_BASE_URL='http://d8.dev'
    ./vendor/bin/phpunit -c core --testsuite functional
    ./vendor/bin/phpunit -c core --testsuite functional-javascript
    

Note: functional tests have to be invoked with a user in the same group as the web server user. You can either configure Apache (or nginx) to run as your own system user or run tests as a privileged user instead.

To develop locally, a straightforward - but also less secure - approach is to run tests as your own system user. To achieve that, change the default Apache user to run as your system user. Typically, you'd need to modify /etc/apache2/envvars on Linux or /etc/apache2/httpd.conf on Mac.

Example for Linux:

export APACHE_RUN_USER=<your-user>
export APACHE_RUN_GROUP=<your-group>

Example for Mac:

User <your-user>
Group <your-group>

If the default user is e.g. www-data, the above functional tests will have to be invoked with sudo instead:

export SIMPLETEST_DB='mysql://root@localhost/dev_d8'
export SIMPLETEST_BASE_URL='http://d8.dev'
sudo -u www-data -E ./vendor/bin/phpunit -c core --testsuite functional
sudo -u www-data -E ./vendor/bin/phpunit -c core --testsuite functional-javascript