Yii Goutte功能测试覆盖范围未被记录

时间:2014-05-23 07:56:19

标签: yii jenkins phpunit functional-testing goutte

功能测试覆盖范围不记录Goutte网络爬虫调用的任何控制器。

<?php

use Goutte\Client;

class DummyTest extends PHPUnit_Framework_TestCase {

/**
 * Web Crawler
 * @var \Goutte\Client
 */
protected $client;

public function setUp() {
    parent::setUp();
    $this->client = new Client();
}

public function testActionIndex() {

    $call = yii::app()->params['siteUrl'] . 'site/index';
    $crawler = $this->client->request('POST', $call, array(), array(), array());
    $response = $this->client->getResponse()->getContent();

    $this->assertEquals(200, $this->client->getResponse()->getStatus());
}
//..

相反,覆盖率报告显示测试本身已被覆盖。 我期待报告显示站点控制器中的索引操作也被覆盖。

测试工作并确定服务器响应是200 OK。 我是否需要调整任何配置以允许phpunit将请求跟踪到控制器/操作中? - 我使用PHP yii框架并使用netbeans和jenkins进行测试

1 个答案:

答案 0 :(得分:0)

在这种情况下无法计算代码覆盖率,因为您正在抓取您的网站。 调试器看到正在执行的唯一代码是测试本身,PHPUnit和一些Goutte代码。你的控制器没有被运行phpunit的同一个进程执行。它由Web服务器执行,但PHPUnit无法注意到它。