Write Unit Tests For Your WordPress Plugin Using PhpStorm Code Completion

Git clone the WordPress develop repository somewhere on your hard drive:

git clone git@github.com:WordPress/wordpress-develop.git

Comment out the class_alias() functions in phpunit6-compat.php because these break PhpStorm code completion. (These files aren’t actually used by the testing framework, we only downloaded them so they could be included in the Project Configuration’s Include Path.)

PhpStorm -> Settings -> Languages & Frameworks -> PHP: Add wordpress-develop/tests/phpunit/includes to your Include Path.

Use WP-CLI to generate the tests scaffolding.

Write tests that extend WP_UnitTestCase. Look at the code in wordpress-develop/tests/phpunit/tests for examples.

Autocomplete!
Autocomplete!

3 thoughts on “Write Unit Tests For Your WordPress Plugin Using PhpStorm Code Completion”

  1. Such a simple solution that I never thought of before. Thanks for the post! It’ll be nice not needing to do a google search for the (rather sparse) WP unit testing documentation.

  2. This is an excellent tip but I’m still not seeing methods like assertEquals() available. Am I missing something? I see see WP specific functions available.

Leave a Reply

Your email address will not be published. Required fields are marked *