php单元无法识别$服务器[';文档根';]
我正在用phpunit为我的代码编写一个单元测试。代码类具有以下功能:php单元无法识别$服务器[';文档根';],php,unit-testing,phpunit,Php,Unit Testing,Phpunit,我正在用phpunit为我的代码编写一个单元测试。代码类具有以下功能: <? // Dependencies // require_once($_SERVER['DOCUMENT_ROOT']."/includes/configs.php"); class xyz{ .. ... .. } ?> 通过为服务器['DOCUMENT\u ROOT']提供依赖于特定环境的$解决了此错误。当您调用PHPUnit时,它在没有该环境的情况下运行PHP 通常,您希望测
<?
// Dependencies
//
require_once($_SERVER['DOCUMENT_ROOT']."/includes/configs.php");
class xyz{
..
...
..
}
?>
通过为服务器['DOCUMENT\u ROOT']提供依赖于特定环境的
$解决了此错误。当您调用PHPUnit时,它在没有该环境的情况下运行PHP
通常,您希望测试中的代码独立于环境。常见的设置是有一个引导程序,可以从Web服务器环境和PHPUnit环境引导
而不是使用$\u服务器['DOCUMENT\u ROOT']
您可以通过使用神奇的常量来设置引导程序中的基本目录:\uuuuuuu FILE\uuuuu
和\uu DIR\uuuu
类似于$\u SERVER
:$\u GET
,$\u POST
和$\u COOKIE
在PHPUnit环境中也不可用。您可以在安装方法中手动设置$\u SERVER['DOCUMENT\u ROOT'
public function setUp(){
$_SERVER['DOCUMENT_ROOT'] = "...";
$this->xyz= new xyz();
}
未设置$\u服务器的原因:我有一个自定义路径$\u服务器['path\u TO\u REFERENCED\u CODE'],该路径不起作用。谢谢。。我正在设置中将其设置为$_SERVER['PWD']
Fatal Error: Class xyz not found
Fatal error: require_once(): Failed opening required '/includes/configs.php'.
public function setUp(){
$_SERVER['DOCUMENT_ROOT'] = "...";
$this->xyz= new xyz();
}