Open main menu

Testing is software development.

Software development is writing code. Testing makes sure the code actually works, so in a nutshell: Testing is software development :-)

Phan is a static analyzer for PHP. Phan project on GitHub It will help you write better PHP7 code. You'll need the Abstract Syntax Tree generated by PHP. You can read a tutorial for how to get Phan working in your project

The MediaWiki project uses Phan. See the article Continuous_integration/Phan

Links

  1. https://github.com/wikimedia/mediawiki-tools-phan
  2. https://github.com/phan/phan
  3. https://www.mediawiki.org/wiki/Continuous_integration/Entry_points
  4. https://www.mediawiki.org/wiki/Continuous_integration/Phan
  5. https://www.mediawiki.org/wiki/Best_practices_for_extensions#File_structure
  6. https://github.com/nikic/php-ast

Static Analysis of MediaWiki

For some current analysis see https://doc.wikimedia.org/mediawiki-core/master/phpmetrics/complexity.html

PHPStan

https://phpstan.org/

Psalm

https://psalm.dev/