Unit testing CakePHP控制器测试:模拟模型和测试方法

Unit testing CakePHP控制器测试:模拟模型和测试方法,unit-testing,cakephp,cakephp-2.5,Unit Testing,Cakephp,Cakephp 2.5,我是CakePHP单元测试的初学者。我的CakePHP版本是2.5.2,我使用的是cake测试套件2.5.2。我想做控制器测试。我已经尝试了食谱中给出的所有方法。我认为这对于烹饪书中给出的例子来说太复杂了。我已经为我的申请定制了路线。我可以调用如下所示的方法: 这是我的控制器中最简单的方法。我如何开始测试这个方法,我需要什么样的模拟 public function index() { if (!$this->request->is('Get')) { thro

我是CakePHP单元测试的初学者。我的CakePHP版本是2.5.2,我使用的是cake测试套件2.5.2。我想做控制器测试。我已经尝试了食谱中给出的所有方法。我认为这对于烹饪书中给出的例子来说太复杂了。我已经为我的申请定制了路线。我可以调用如下所示的方法:
这是我的控制器中最简单的方法。我如何开始测试这个方法,我需要什么样的模拟

public function index() {
    if (!$this->request->is('Get')) {
        throw new MethodNotAllowedException(__('HTTP request Method Not allowed..'));
    }
    $networks = $this->Network->UserNetwork->getNetworks($this->current_user);
    $returnObject = array('message' => 'Networks found successfully',
        'data' => $networks
    );
    return $this->_sendResponse($returnObject, 200);
}  
到目前为止,我尝试的是:

<?php
App::uses('NetworksController', 'Controller');
class NetworksControllerTestCase extends ControllerTestCase {
    public $fixtures = array(
        'app.network',
    );

    public function setUp() {
        parent::setUp(); // TODO: Change the autogenerated stub
        $this->Network = $this->generate('Networks',
        array('models' => array('network','usernetwork' => array('getNetworks'))));
    }

    public function testIndex() {
        $result = $this->testAction('/api/v1/networks/index', array('return' => 'vars'));
        debug($result);
    }}

请标记您正在使用的CakePHP版本,并显示您实际尝试了什么。我已经编辑了问题,我还想让您知道我的应用程序使用身份验证令牌来验证用户身份。我应该绕过身份验证过程还是模拟它?