1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- README (English)
- --------------------------------
- This directory contains unit tests and docs for Dolibarr quality analysis.
- - PHPUnit - https://phpunit.de
- - PHP_CodeSniffer - https://pear.php.net/package/PHP_CodeSniffer/
- - PHP Depend - https://pdepend.org/
- PHPUNIT
- -------
- To use make phpunit analysis, you must:
- * Install PHPUnit
- If using Eclipse, you must also add an entry as external tool for phpunit program with:
- -Name: PHPUnit
- -Location: Linux: /usr/bin/php
- Windows: C:\Program Files (x86)\wamp\bin\php\php5.2.8\php.exe
- -Workspace: ${workspace_loc}
- -Arguments: Linux: /usr/bin/phpunit ${resource_path}
- Windows: "C:\Program Files (x86)\PHPUnit-3.4.9\phpunit.php" ${resource_path}
- If not using Eclipse, to install PHPUnit manually:
- > sudo apt-get remove phpunit
- > sudo apt-get upgrade pear
- > sudo pear channel-discover pear.phpunit.de
- > sudo pear channel-discover pear.symfony-project.com
- > sudo pear channel-discover components.ez.no
- > sudo pear update-channels
- > sudo pear upgrade-all
- > sudo pear install --alldeps phpunit/PHPUnit
- * Run Unit tests:
- > cd test/phpunit
- > phpunit MyFileTest.php
- If using Eclipse, select the test and click on menu "Run external tools and choose PHPUnit".
- * Example to run phpunit 7.0 from composer using php version 8.0:
- > cd ~/tmp
- > composer -i phpunit
- > cd test/phpunit
- > /usr/bin/php8.0 ~/tmp/htdocs/includes/phpunit/phpunit/phpunit MyFileTest.php
- * Generate a report of Unit tests code coverage done by one tested class:
- > cd test
- > phpunit -d memory_limit=-1 -d max_input_time=1800 -d max_execution_time=1800 --configuration ./phpunit/phpunittest.xml --coverage-html ./report ./report/logs/phpunit.xml phpunit/MyClassTest.php
- Note that xdebug must be installed for this feature to work.
- * Generate a report of Unit tests code coverage done by all Dolibarr unit test classes:
- Increase your PHP memory (memory_limit and suhosin.memory_limit in php.ini) to 4G. You can check setup with "php -i | grep memory". Note: Version 3.5 need 1.5G
- > cd test
- > phpunit -d suhosin.memory_limit=4G -d memory_limit=-1 -d max_input_time=0 -d max_execution_time=0 --configuration ./phpunit/phpunittest.xml --coverage-html ./report phpunit/AllTests.php
- If there is a timeout before end, try this:
- > cd test
- > php -d suhosin.memory_limit=4G -d memory_limit=-1 -d max_input_time=0 -d max_execution_time=0 /usr/bin/phpunit -d suhosin.memory_limit=4G -d memory_limit=-1 -d max_input_time=0 -d max_execution_time=0 --configuration ./phpunit/phpunittest.xml --coverage-html ./report phpunit/AllTests.php
- ou
- > php -d suhosin.memory_limit=4G -d memory_limit=-1 -d max_input_time=0 -d max_execution_time=0 /usr/bin/phpunit -d suhosin.memory_limit=4G -d memory_limit=-1 -d max_input_time=0 -d max_execution_time=0 --configuration ./phpunit/phpunittest.xml --coverage-php ./report/codecoverage.php phpunit/AllTests.php
- puis
- > sudo renice -10 idprocessphp
- PHP-CODESNIFFER
- ---------------
- * Install phpcs
- * Launch PHP-Codesniffer:
- > cd dev
- > /usr/bin/php5 -c ./codesniffer/php.ini /usr/bin/phpcs --report=xml --standard=./codesniffer ../htdocs/test.php
- PHPDEPEND
- ---------
- * Install pdepend
- * Launch PDepend analysis:
- > cd test
- > pdepend --debug -d memory_limit=-1 --configuration=./phpunit/phpunittest.xml --phpunit-xml=./report/logs/pdepend.xml --summary-xml=./report/logs/summary.xml --jdepend-chart=./report/logs/jdepend.svg --overview-pyramid=./report/logs/pyramid.svg --ignore=custom,custom2,adodbtime,artichow,ckeditor,efc_xfss,fckeditor,fpdf,geoip,magpierss,nusoap,odtphp,php_writeexcel,smarty,smtps,tcpdf,vcard ../htdocs
- * To clean pdepend cache files
- > rm -fr ~/.pdepend/*
|