gpt4 book ai didi

php - 使用 PHPUnit 处理路径问题

转载 作者:可可西里 更新时间:2023-10-31 22:10:48 27 4
gpt4 key购买 nike

我刚开始使用 PHPUnit,但遇到了一些问题。

我的代码使用 $_SERVER['DOCUMENT_ROOT'] 来计算包含的路径,这在我的 apache 服务器运行 PHP 时有效,但是当我使用“phpunit 测试”从命令行运行 phpunit 时未设置 DOCUMENT_ROOT,所以这些包括不起作用。

我是否在 PHPUnit 的配置中遗漏了什么?它应该以某种方式与apache集成吗?

最佳答案

迟到的回答,抱歉。

不,您没有遗漏任何东西。 PHP CLI(命令行的 PHP)与作为 Apache/CGI 模块的 PHP 不同。

不过,您可以做的是更改文件的 setUp() 以将 $_SERVER['DOCUMENT_ROOT'] 设置为您需要的(因为 $_SERVER 即使在 CLI 上下文中仍然可以作为超全局变量使用),例如:

public function setUp() {
$_SERVER['DOCUMENT_ROOT'] = dirname(__FILE__) . "/../application";
}

请注意,您可能希望将其放入您的 tearDown() 中:

public function tearDown() {
unset($_SERVER['DOCUMENT_ROOT']);
}

PHPUnit backs up your global state如果您完全使用全局(也是超全局)数据,这会大大降低您的测试速度,因此最好避免在测试完成后使用任何数据。

关于php - 使用 PHPUnit 处理路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1653910/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com