root@u1010:/opt/lampp/htdocs/trackstar/protected/tests# phpunit unit/DbTest.php
PHPUnit 3.4.13 by Sebastian Bergmann.
E
Time: 2 seconds, Memory: 5.75Mb
There was 1 error:
1) DbTest::testConnection
CDbException: CDbConnection failed to open the DB connection.
/opt/lampp/htdocs/yii/framework/db/CDbConnection.php:275
/opt/lampp/htdocs/yii/framework/db/CDbConnection.php:242
/opt/lampp/htdocs/yii/framework/db/CDbConnection.php:221
/opt/lampp/htdocs/yii/framework/base/CModule.php:363
/opt/lampp/htdocs/yii/framework/base/CModule.php:86
/opt/lampp/htdocs/trackstar/protected/tests/unit/DbTest.php:6
FAILURES!
Tests: 1, Assertions: 0, Errors: 1.
root@u1010:/opt/lampp/htdocs/trackstar/protected/tests#
答案 0 :(得分:1)
您应该编辑protected / config / test.php
中的'db'组件声明当您运行测试时,将使用此配置文件。
检查protected / tests / bootstrap.php以查看包含的文件。
答案 1 :(得分:1)
好。大约半天后拔出我的头发。这就是我必须做的。希望它能帮助别人。几个简单的检查解决了这个问题我有不同路径的php和phpunit的多个副本。我假设您已经通过了/requirements/index.php检查,并且您的配置/主要&测试文件集。
在终端中找到您的PHPUnit可执行文件:
哪个phpunit
找到正在运行的php可执行文件:
哪个php
sudo vi path / to / phpunit(可执行文件)
确保引用php exectuable的第一行实际上是第二步中的那一行。
解决了我的头痛。 :)
答案 2 :(得分:0)
无法连接到您的数据库。之一:
答案 3 :(得分:0)
尝试:
mysql_connect("127.0.0.1", "root", "123456") or die (mysql_error());
echo "Connected to MySQL";
有时MySQL服务器的权限设置对于“127.0.0.1”和“localhost”是不同的。如果是这种情况,您可以这样做:
mysql> GRANT ALL PRIVILEGES ON trackstar_dev.* TO 'root'@'127.0.0.1';
你的mysql服务器上的