【问题标题】:Install phpunit on windows without composer won't work在没有作曲家的 Windows 上安装 phpunit 将不起作用
【发布时间】:2026-02-08 01:10:02
【问题描述】:

我正在尝试在我的 Windows 机器上手动安装 phpunit。我不使用作曲家,所以我必须使用 .phar 文件手动安装它。我正在按照官方文档中的说明进行操作:

https://phpunit.readthedocs.io/en/latest/installation.html#windows

我已经完成了每一步,但它不起作用。 phpunit --version 会给我发消息'phpunit' is not recognized as an internal or external command, operable program or batch file. 有人可以帮助我吗?

我正在使用带有 XAMPP 3.2.2 和 PHP 7.1.1 的 Windows 7 64 位。

编辑:

我的 phpunit.cmd 文件位置是C:\xampp\php\phar\phpunit.cmd。 该文件包含代码@php "%~dp0phpunit.phar" %*。我已将 ;C:xampp\php\phar 添加到我的 PATH 变量中。

【问题讨论】:

    标签: php phpunit environment-variables phar


    【解决方案1】:

    为了让 Windows 识别任何命令,您必须将二进制文件的路径放在相关的环境变量 (PATH) 中。在此之前,您需要创建某种 Windows 可以本地运行的文件(即不是 .phar - 可以是命令行/批处理文件或可执行文件)。以下是说明:

    https://phpunit.de/manual/current/en/installation.html#installation.phar.windows

    编辑:如果遵循上述说明,确保php 本身是PATH 环境变量的一部分也很重要,这样就可以执行php phpunit.phar 之类的命令。

    【讨论】:

    • 我已经完成了该教程中的每一步,在 phpunit 文档中描述了相同的步骤(请参阅我的问题中的链接)。我唯一不确定的是,我必须更改哪个确切的环境变量。是用户的路径变量还是系统变量?
    • 两者都可以。我将用户变量用于这样的事情。
    • mhh 好的...我什么都不用做了吗?我以前从未使用过 .phar 文件。我只是不知道我在哪里做错了
    • 就本示例而言,将 .phar 文件视为常规 .php 文件。你需要 PHP 来运行它们。所以你的 Windows 命令行文件需要使用 PHP,比如:php phpunit.phar。但是php命令也必须在环境变量中,否则会失败。如果您按照说明制作了一个 phpunit.cmd 文件,您可以将其发布在您的问题中吗?
    • 我已经编辑了我的问题。 “php命令也必须在环境变量中”到底是什么意思?