PHP コードから MySQL データベースに接続しようとすると、すべて問題ないように見え、すべてのクエリが正常に実行されます。ただし、PHPUnit の単体テストでコードをテストすると、次の致命的な PHP エラーが発生します。
PHP 致命的なエラー: 未定義の関数 mysql_connect() を呼び出します。
示されているように、このコードは単体テスト以外では問題なく動作しますが、PHPUnit はエラーを生成します。
PHP 7 以降のバージョンでテストしていると思います。
PHPドキュメント mysql_queryでは、次のように説明されています
警告 この拡張機能は PHP 5.5.0 で廃止され、PHP 7.0.0 で削除されました。代わりに、MySQLi または PDO_MySQL 拡張機能を使用する必要があります。詳細については、MySQL: API ガイドの選択および関連する FAQ も参照してください。この関数の代替には次のものがあります: mysqli_query() PDO::query()
したがって、2 つの解決策が考えられます。
名前空間を使用している可能性が高いため、mysql_query
orMySQLi
は未定義です。
次のことを試してください。
$mysqli = new \MySQLi(...);