在模型中加载数据库时,未显示CIUnit测试结果

时间:2013-01-31 22:14:09

标签: unit-testing phpunit codeigniter-2

我正在尝试让CIUnit使用我的Fedora 17 64位计算机。 在使用现有代码跟踪this教程时,我遇到了奇怪的行为,如下所示。

[root@fedora tests]# phpunit --debug
PHPUnit 3.7.13 by Sebastian Bergmann.
Configuration read from /test_app/tests/phpunit.xml
Starting test 'ManagerModelTest::testNumServers'.
[root@fedora tests]#

然后,没有任何反应。我在Windows 7上测试了完全相同的代码,并且它工作正常(显示的测试数量断言和失败)。但是当我尝试使用fedora时,没有显示任何结果。以下是我的模型和测试类。

class Manager_model extends CI_Model
{
    public function __construct()
    {
        parent::__construct();
        $this->load->database('agreements');
    }
}

class ManagerModelTest extends CIUnit_TestCase
{
    private $mm;

    public function setUp()
    {
        parent::setUp();
        $this->CI->load->model('manager_model');
        $this->mm = $this->CI->manager_model;
    }

    public function testNumServers()
    {
        $this->assertTrue(FALSE);
    }
}

我甚至没有在测试中使用任何模型函数。但是,如果我在模型中注释$this->load->database('agreements');,它可以正常工作。我检查了日志文件,但没有发现错误消息。为什么会在Fedora机器上发生这种情况,而不是在Windows 7上发生?

1 个答案:

答案 0 :(得分:0)

原来我的php-cli没有加载mysql.ini,因此不支持mysql_connect()。安装php-mysql后,它似乎正在运行。