Difference between revisions of "Developer Area/Testing/Unit Testing"
From Mahara Wiki
< Developer Area | Testing
(4 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | = Unit Test Introduction = | + | =Unit Test Introduction= |
Work is currently underway to integrate phpunit unit testing in to Mahara. | Work is currently underway to integrate phpunit unit testing in to Mahara. | ||
Documentation for phpunit is available at http://www.phpunit.de/manual/current/en/ | Documentation for phpunit is available at http://www.phpunit.de/manual/current/en/ | ||
− | = Setup and Running = | + | =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. | 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. | ||
− | * Install phpunit on your development machine | + | ==Old instructions== |
− | * Switch to a user with permission to access your dataroot directory. In debian this would be: | + | |
+ | *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 | sudo su - www-data | ||
− | * Change directory to the root of the mahara git tree (the directory that htdocs is in) | + | |
+ | *Change directory to the root of the mahara git tree (the directory that htdocs is in) | ||
+ | |||
cd $path_to_mahara | cd $path_to_mahara | ||
− | * Run phpunit: | + | |
+ | *Run phpunit, first option only if you have set up your cli for php properly: | ||
+ | |||
phpunit . | phpunit . | ||
+ | OR | ||
+ | php -c /etc/php5/apache2/php.ini /usr/bin/phpunit . | ||
+ | OR | ||
+ | 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 = | + | =Best Practices= |
TODO | TODO |
Latest revision as of 15:13, 24 March 2023
Unit Test Introduction
Work is currently underway to integrate phpunit unit testing in to Mahara. Documentation for phpunit is available at http://www.phpunit.de/manual/current/en/
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 . OR php -c /etc/php5/apache2/php.ini /usr/bin/phpunit . OR 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
TODO