首页 > 解决方案 > 如何在 Phpunit 中使用 $_SERVER['DOCUMENT_ROOT']

问题描述

我正在尝试设置 Phpunit 并在我的整个项目中,$_SERVER['DOCUMENT_ROOT']用于链接所有文件/函数/连接等。在我的测试类中,如果我链接我的global_php_includes.php文件的绝对路径(这是包含更多包含的父文件其他所有内容)然后每次调用 $_SERVER['DOCUMENT_ROOT'] 时都会出错。

我对 Phpunit 很陌生,有什么办法可以解决这个问题吗?我使用作曲家安装它。这是我的xml文件:

<?xml version="1.0" encoding="UTF-8" ?>

<phpunit bootstrap="vendor/autoload.php" colors="true" verbose="true" stopOnFailure="true">

    <testsuites>
        <testsuite name="unit">
            <directory>tests</directory>
        </testsuite>
    </testsuites>

</phpunit>

标签: phpunit-testingphpunit

解决方案


面对这个问题,你做不到(据我所知)。

如果您通过 CLI 启动phpunit,它不是由服务器直接使用,而是使用 PHP,因此您必须指定绝对路径(与执行 cron 作业的方式相同)。

我建议您在您的网站上使用以更轻松地使用 PHPUnit,但为您的项目使用绝对路径


推荐阅读