Developer Area/Testing/Unit Testing

From Mahara Wiki

< Developer Area‎ | Testing(Redirected from Developer Area/Unit Testing)

Unit Test Introduction

Work is currently underway to integrate phpunit unit testing in to Mahara. Documentation for phpunit is available at

Setup and Running

You'll need to already have mahara set up and installed. Default settings are copied from your running configuration and overridden with unit test settings.

Old instructions

  • Install phpunit on your development machine
  • Switch to a user with permission to access your dataroot directory. In debian this would be:
 sudo su - www-data
  • Change directory to the root of the mahara git tree (the directory that htdocs is in)
 cd $path_to_mahara
  • Run phpunit, first option only if you have set up your cli for php properly:
 phpunit .
 php -c  /etc/php5/apache2/php.ini  /usr/bin/phpunit .
 php -c  /etc/php5/php-fpm/php.ini  /usr/bin/phpunit .

New instructions

This requires phpunit 3.7 or later which is installed by running:

make initcomposer

Unit tests can be run by:

make phpunit

From the main directory of mahara (eg, parent directory of htdocs)

If it complains about 'session data directory' not being writable then run as follows:

sudo -u www-data make phpunit

Best Practices