最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

plugins - Error when setting up phpunit tests with wp-cli scaffold

programmeradmin0浏览0评论

I am trying to figure out the setup for unit tests for wordpress plugins. I am using Ubuntu. So far I have:

  • Local WordPress Installation
  • WP-CLI up and running
  • Installed phpunit
  • used wp scaffold command to generate unit test files

When I now try and run the phpunit command I get the following error:

PHP Warning:  require_once(/tmp/wordpress//wp-includes/class-       phpmailer.php): failed to open stream: No such file or directory in  /tmp/wordpress-tests-lib/includes/mock-mailer.php on line 2

PHP Fatal error: require_once(): Failed opening required '/tmp/wordpress//wp-includes/class-phpmailer.php' (include_path='.:/usr/share/php:/usr/share/pear') in /tmp/wordpress-tests-lib/includes/mock-mailer.php on line 2

This is my wp --info:

PHP binary: /usr/bin/php5
PHP version:    5.6.11-1ubuntu3.4
php.ini used:   /etc/php5/cli/php.ini
WP-CLI root dir:    phar://wp-cli.phar
WP-CLI packages dir:    
WP-CLI global config:   
WP-CLI project config:  
WP-CLI version: 1.0.0

I am trying to follow this tutorial:

/

Thank you for any help!!!

I am trying to figure out the setup for unit tests for wordpress plugins. I am using Ubuntu. So far I have:

  • Local WordPress Installation
  • WP-CLI up and running
  • Installed phpunit
  • used wp scaffold command to generate unit test files

When I now try and run the phpunit command I get the following error:

PHP Warning:  require_once(/tmp/wordpress//wp-includes/class-       phpmailer.php): failed to open stream: No such file or directory in  /tmp/wordpress-tests-lib/includes/mock-mailer.php on line 2

PHP Fatal error: require_once(): Failed opening required '/tmp/wordpress//wp-includes/class-phpmailer.php' (include_path='.:/usr/share/php:/usr/share/pear') in /tmp/wordpress-tests-lib/includes/mock-mailer.php on line 2

This is my wp --info:

PHP binary: /usr/bin/php5
PHP version:    5.6.11-1ubuntu3.4
php.ini used:   /etc/php5/cli/php.ini
WP-CLI root dir:    phar://wp-cli.phar
WP-CLI packages dir:    
WP-CLI global config:   
WP-CLI project config:  
WP-CLI version: 1.0.0

I am trying to follow this tutorial:

https://pippinsplugins/unit-tests-wordpress-plugins-setting-up-testing-suite/

Thank you for any help!!!

Share Improve this question asked Dec 15, 2016 at 20:16 Mauro BringolfMauro Bringolf 1772 silver badges7 bronze badges 3
  • 1 I have the same problem on Windows. Can't find much info on this anywhere. – Robin Andrews Commented Mar 27, 2017 at 22:18
  • I recently switched to MacOS for all WordPress development. Have not figured it out on Windows yet either. – Mauro Bringolf Commented Apr 15, 2017 at 16:03
  • I've found that the tutorial cited lacks some key instructions, only one of which I've figured out. It does not say to install svn (subversion) before starting. Once I did that I had to run the lines that call svn co... by hand. What is not at all made clear and remains unknown is how the tutorial's database knows their plugin is installed. When I checked my test database it had none of the settings of an activated plugin. Tutorial may be necessary but is insufficient for testing. – geoB Commented Jun 7, 2017 at 21:36
Add a comment  | 

1 Answer 1

Reset to default 1

If you're on Windows, open wp-tests-config.php and change the ABSPATH with absolute path to your TEMP folder. For example:

define( 'ABSPATH', 'C:\Users\{User}\AppData\Local\Temp/wordpress/' );

I changed this and phpunit worked! This code is on line 7 in %TEMP%/wordpress-tests-lib/wp-tests-config.php

发布评论

评论列表(0)

  1. 暂无评论