首页 文章

在ZF2中PHp单元测试错误'Undefined index: SERVER_NAME in /config/autoload/global.php'

提问于
浏览
0

I've just started with Zend framework 2. I want to set up unit testing for my Cart module.

I have followed the steps of http://framework.zend.com/manual/current/en/tutorials/unittesting.html

When I run :/var/www/AHA/CDP/module/Cart/tests$ phpunit from terminal I am getting following output:

Sebastian Bergmann的PHPUnit 3.7.28 .

配置从/var/www/ZF2Sample/module/Cart/tests/phpunit.xml中读取

Ë

时间:146毫秒,内存:5.50Mb

有1个错误:

1)Cart \ tests \ Cart \ Controller \ CartControllerTest :: testIndexActionCanBeAccessed include(/ var / www / ZF2Sample / module / Admin / config /../ view / error / index.phtml):无法打开流:没有这样的文件或目录

/var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/View/Renderer/PhpRenderer.php:506 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/View/Renderer/PhpRenderer.php :506 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/View/View.php:205 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/View/View.php:233 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/View/View.php:198 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/Mvc/View/Http/DefaultRenderingStrategy.php :102 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:207 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/Mvc/View/Http/DefaultRenderingStrategy.php:112 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php :468 / var / www / ZF2样本/供应商/ zendframework / zendframework / library / Zend / EventManager / EventManager.php:207 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php:352 / var / www / ZF2Sample / vendor / zendframework / zendframework / library / Zend / Mvc / Application.php:327 /var/www/ZF2Sample/vendor/zendframework/zendframework/library/Zend/Test/PHPUnit/Controller/AbstractControllerTestCase.php:288 / var / www / ZF2Sample /模块/车/测试/车/控制器/ CartControllerTest.php:30

FAILURES!测试:1,断言:0,错误:1 .

Below is my global.php :

<?php
    define('SITE_URL', 'http://' . $_SERVER['SERVER_NAME'].'/');
    define('JS_URL', 'http://' . $_SERVER['SERVER_NAME'].'/js/');
    define('CSS_URL', 'http://' . $_SERVER['SERVER_NAME'].'/css/');
    define('IMG_URL', 'http://' . $_SERVER['SERVER_NAME'].'/img/');
    return array(
        'cart_webservice_url' => "http://" . $_SERVER['SERVER_NAME'] . "/ecommercewebservices",
    );
?>

I placed $_SERVER['SERVER_NAME'] = 'myproject.com'; at beginning of global.php

Then I got below output :

Sebastian Bergmann的PHPUnit 3.7.28 .

配置从/var/www/AHA/CDP/module/Cart/tests/phpunit.xml中读取

I searched a lot but could not find any answer . Please suggest.

1 回答

  • 7

    您可以在phpunit.xml文件中使用以下示例设置不同的$ _SERVER参数 .

    <phpunit>
    ....
        <php>
            <server name='HTTP_HOST' value='http://localhost' />
            <server name="SERVER_NAME" value="http://foo.bar"/>
            <server name="SERVER_PORT" value="80"/>
            <server name="REMOTE_ADDR" value="127.1.2.3"/>
        </php>
    ....
    </phpunit>
    

相关问题