无法在使用 PHPStorm 的 PHPUnit 测试中解析一个目录命令

Can't Parse Up One Directory Command in PHPUnit Testing with PHPStorm

我在 PHPStorm 项目中设置了 PHPUnit。我引用了 PHPUnit phar 文件,并且有一个 PHP 可执行文件链接到我的 PHPStorm 运行配置。我的目录结构如下:

/lib/classes/Class.php
/lib/vendor/phpunit.phar
/lib/test/ClassTest.php

在我的 ClassTest.php 文件中,我引用了另外两个文件:

require_once (__DIR__ . "../vendor/phpunit.phar");
require_once (__DIR__ . "../classes/Class.php");

我在运行测试时遇到以下错误:

Fatal error: require_once(): Failed opening required 
'C:\Users\me\PhpstormProjects\myproject\lib\tests../vendor/phpunit.phar'

似乎 PHP 解析器没有正确解析向上一个目录 ../ 命令。

为什么会这样?

首先:这一行(根本)不需要,因为PHP单元将在那时加载。

require_once (__DIR__ . "../vendor/phpunit.phar");

其次: __DIR__ PHP 中的常量不包含尾部斜杠。当在 require/include 语句中使用时(以及构建完整文件路径时的其他地方),您必须自己添加它。

在您的特定情况下,它必须是(注意 .. 之前的 /):

require_once (__DIR__ . "/../classes/Class.php");