Тесты PHPUnit возвращают пустую подсказку терминала (иногда) - PullRequest
0 голосов
/ 21 мая 2011

Я использую MAMP и успешно настроил PHPUnit + Selenium.

У меня есть два модульных теста - один из них работает и не показывает ошибок, а другой просто возвращается к пустому окну терминала (без указания успеха / сбоя).

Рабочая:

DbTest.php

<?php
class DbTest extends CTestCase
{
    public function testConnection()
    {
        $this->assertNotEquals(NULL, Yii::app()->db);
    }   
}

Не работает:

ProjectTest.php

<?php
class ProjectTest extends CDbTestCase
{
    public function testCRUD()
    {
        //Create a new project
        $newProject= new Project;
        $newProjectName = 'Test Project 1';
        $newProject->setAttributes(
            array(
                'name' => $newProjectName,
                'description' => 'Test project numero uno',
                'create_time' => '2011-05-20 00:00:00',
                'create_user_id' => 1,
                'update_time' => '2011-05-20 00:00:00',
                'update_user_id' => 1,
                )
            );
            $this->assertTrue($newProject->save(false));

        //Read a project

        $retrievedProject = Project::model()->findByPk($newProject->id);
        $this->assertTrue($retrievedProject instanceof Project);
        $this->assertEquals($newProjectName, $retrievedProject->name);
        }
    }
}

Если я запускаю phpunit unit / Dbtest.php, я получаю:

PHPUnit 3.5.13 by Sebastian Bergmann.

.

Time: 0 seconds, Memory: 4.50Mb

Но, если я запускаю phpunit unit / ProjectTest.php, я получаю пустое приглашение:

Trenton-Scotts-MacBook-Air:tests TTS$

Используя MySQL, соединение с БД работает (я успешно смоделировал таблицу, используя Gii в среде Yii). Любая идея о том, что может быть причиной этого?

1 Ответ

2 голосов
/ 21 мая 2011

У вас есть непревзойденный } после строки $this->assertEquals($newProjectName, $retrievedProject->name);.

Удалить непревзойденный }

...