私はWordPressプラグインをユニットテストするためにPHPUnitを実行しようとしていますが、以下のエラーが出続けます。
Warning: mysqli_real_connect(): (HY000/2002): No such file or directory in /private/tmp/wordpress/wp-includes/wp-db.php on line 1452
WP-CLIを使用してユニットテストを設定しましたが、実行しようとするとWP-CLIで同様のエラーがスローされます。
データベースを実行するためにMAMPを使います。
WP-CLIとPHPUnitをpharsとして設定しました。これらは〜/ .bash-profileという別名で、OS Xが提供するデフォルトの "php"で実行しました。これを変更し、WP-CLIとPHPUnitを最新のPHPバージョンはWP-CLIを修正しました(それは実行中でデータベースへの接続は問題ありませんでした)が、PHPUnitはまだ同じエラーを投げていました。
Wp-config.phpファイルを編集して、ホストを ":/path/to/mamp/mysql.socket"、 "localhost:/path/to/mamp/mysql.socket"、 "127.0.0.1"に設定してみました。 "どれも助けにはならなかった。
私は完全に立ち往生している、そして次に何を試すべきかわからない。
PHPUnitテストを実行するとき、WordPressはwp-tests-config.php
の代わりにwp-config.php
から設定をロードします。データベース接続の詳細をwp-tests-config.php
に追加する必要があります。
また、データベースのホスティングにMAMPまたはAMPPSを使用する場合は、localhostの代わりに127.0.0.1をDB_Hostとして使用する必要があります。あるいは、選択したソリューションスタックによって提供されるPHPバージョンを使用するか、またはDB_Hostを ':/path/to/soulution/stack/mysql.socket'に設定します。