为虚拟人加载固定装置 phpunit 测试

问题描述 投票:0回答:1

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

我写了这个文件: 测试/赛程/visitante_boletin.yml

1:
    id_localizacion: 60
    email: [email protected]
    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/service/front/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;
    
}
php phpunit fixtures
1个回答
0
投票

PHPUnit 文档您的朋友

你没有提到,但是你有吗:

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

这绝对对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.