0

我对某个文件的路径有疑问。我想在我的 phpunit 测试中包含一个文件。在我们的中央存储库中,它位于此处:

include 'secure\functions.php';

但是,在运行测试时出现错误,声称我在测试中调用的某个函数(位于此包含文件中)未定义或该目录不存在:

“警告:include(secure\functions.php):无法打开流:第 3 行的 C:\xampp\htdocs\PVT\root\tests\unit-test\testFunctions\testFunctions.php 中没有这样的文件或目录”

“致命错误:调用未定义函数 checkbrute()”

当我像这样包含文件的整个路径时,它可以正常工作。OBS 这是在本地检出并运行时:

include 'C:\xampp\htdocs\PVT\root\secure\functions.php';

问题是我将把它提交到我们的中央仓库,以便任何人都可以执行测试,因此我的本地路径对其他人无效。关于什么可能是错误的任何想法?为什么第一个选项不起作用?

4

1 回答 1

0

您需要使用绝对文件路径。从您的问题中可以看出,您的代码在错误的位置查找文件:

C:\xampp\htdocs\PVT\root\tests\unit-test\testFunctions\testFunctions.php 对比C:\xampp\htdocs\PVT\root\secure\functions.php

我使用 Linux,我不确定这是否适用于 Windows,但尝试引用项目所在的当前/主目录,./secure/functions.php如果它是 Linux 的话。

于 2013-06-04T03:08:44.143 回答