加载灯具phpunit测试假人

时间:2013-02-03 12:04:44

标签: phpunit fixtures

谢谢你看看这里。我开始参与一个项目,我需要为我编写的代码创建测试。我没有太多的测试经验。

我写过这个文件: 测试/装置/ visitante_boletin.yml

1:
    id_localizacion: 60
    email: emailconfirmado@server.net
    estado_confirmacion: 1
    fecha_creacion: 2013-02-03 12:01:49
    fecha_confirmacion: 2013-02-03 12:01:49
    fecha_cancelacion: 
    token: 343fbb5f15709935470ba3b7524068af8544776d924b0bd45c2558a7eb5c8082f0bef31402b773fa

并且这个测试: 测试/库/ COM / arteinformado /服务/正面/ SuscribeServiceTest.php ...

    const SINCONFIRMAR = 0;
    const CONFIRMADO = 1;
    const CANCELADO = 2;
...
    public function testShouldGetAllSuscriptionsWithStateCONFIRMADO() {
        $suscriptors = $this->_suscribeService->getAllSuscriptionsWithState(self::CONFIRMADO);
        $this->assertNotEmpty($suscriptors);
        $this->assertEquals(1, count($suscriptors));
    } 
...

当我运行测试时,我在assertNotEmpty上出现错误,因此我不知道是否正在加载夹具数据或正在进行什么,因为它正在测试它的方法非常简单并且应该没问题。

public function getAllSuscriptionsWithState($estado_confirmacion) {
    $suscriptors = array();

    $query = $this->db->get_where('visitante_boletin', array('estado_confirmacion' => $estado_confirmacion));
    foreach ($query->result() as $row) {
        $suscriptor = $this->_dbRowToVisitanteBoletin($row);
        array_push($suscriptors, $suscriptor);
    }

    return $suscriptors;

}

任何帮助指南都会非常感激。

提前致谢。干杯, ·_-

1 个答案:

答案 0 :(得分:0)

PHPUnit-documentationyour friend

你没有提到它,但有你:

  • 安装了DbUnit-extension
  • 让您的测试类扩展PHPUnit_Extensions_Database_TestCase
  • 为您的测试类提供了getConnection() - 和getDataSet() - 方法

这绝对对我有用。