PhpUnit:虽然测试执行得很好,但http响应是空的

时间:2017-07-14 12:07:51

标签: php codeigniter unit-testing phpunit

我正在尝试在小型应用程序上编写练习单元测试。这是我第一次进行单元测试,而且我不是很了解。这就是我想要做的。

$response=$this->request('POST',['crud_controller','add_data' ,$data]);
$this->assertEquals(1,$response);

如果处理了数据,则函数add_data被编程为return 1,否则编程为return -1。数据正在处理,但phpUnit显示失败的测试 问题:

  

声明null匹配预期值1失败。

我正在使用 codeigniter 并使用 phpunit 进行测试。

完成测试用例:

    <?php
    class crud_controller_test extends TestCase{
    public function test_add_data(){
        $data =array(
            'name' => 'badPass',
        );
        $response=$this->request('POST',['crud_controller','add_data' ,$data]);
        $this->assertEquals(1,$response);
        //$this->assertEquals(-1,$response);
        //$this->assertEquals(0,$response);
    }
    public function test_update_data(){
        $data =array(
            'id'=>'29',
            'name' => 'badPass',
        );
        $response=$this->request('POST',['crud_controller','update_data' ,$data]);
        var_dump($response);
        $this->assertEquals(1,$response);
        //$this->assertEquals(-1,$response);
        //$this->assertEquals(0,$response);
    }
}
?>

调用方法:

public function add_data($data){

        if($this->crud_model->insert($data) ==true)
            return 1;
        else
            return -1;
         //return $this->crud_model->insert($data);
        //$this->index();
    }

public function update_data($data){

        if($this->crud_model->update($data) == true)
            return 1;
        else
            return -1;
        //$this->index();
    }

0 个答案:

没有答案