【问题标题】:Install PHPUNIT with Composer使用 Composer 安装 PHPUNIT
【发布时间】:2013-09-12 08:11:49
【问题描述】:

我有 Symfony 2 的项目,我想在 Windows 7 上使用 PHPUNIT。

On githut phpunit is:

Composer

Simply add a dependency on phpunit/phpunit to your project's composer.json file if you use Composer to manage the dependencies of your project. Here is a minimal example of a composer.json file that just defines a development-time dependency on PHPUnit 3.7:

{
    "require-dev": {
        "phpunit/phpunit": "3.7.*"
    }
}
For a system-wide installation via Composer, you can run:

composer global require 'phpunit/phpunit=3.7.*'
Make sure you have ~/.composer/vendor/bin/ in your path.

首先我使用系统范围的安装,但我不知道何时安装。 接下来我添加到我的 composer.json 要求开发。 这在 C:/wamp/www/myproject/vendor/symfony 中安装了 phpunit。接下来我尝试命令:

 composer install --dev

而且我不能使用 phpunit。在 cmd.exe 我输入“phpunit”,我有错误:

'phpunit' is not recognized as an internal or external command operable program or batch file

我如何使用 phpunit?我有 Windows 7、Wamp 服务器和 php 5.4.12。

【问题讨论】:

    标签: php windows symfony phpunit wamp


    【解决方案1】:

    当你通过composer在windows中安装PHP-Unit时,全局安装会在其中创建文件

    C:\Users\YOUR_USERNAME\AppData\Roaming\Composer
    

    要通过命令行轻松执行phpunit,您需要在Windows 环境变量中添加phpunit.bat 文件的路径。为此:

    1. 右键My Computer
    2. 转到Properties -> Advance system settings
    3. Advance 选项卡中单击Environment variables

    现在将C:\Users\YOUR_USERNAME\AppData\Roaming\Composer\vendor\bin 添加到窗口PATH

    您现在可以从命令运行 phpunit。请注意,您可能需要重新启动命令提示符才能使更改生效。

    【讨论】:

    • 谢谢!它帮助了我!
    • 此外,如果您通过 IDE(例如 PhpStorm)使用终端,则需要关闭并重新打开它才能使更改生效。
    【解决方案2】:

    包的bin文件放在配置好的bin目录下。默认是vendor/bin,当你使用symfony标准版时,这是bin文件夹。

    要执行此 bin 文件,请运行 ./bin/phpunit(或在不使用 Symfony 标准版时运行 ./vendor/bin/phpunit

    Windows 用户必须将其放在双引号中:"bin/phpunit"(或 "vendor/bin/phpunit"

    【讨论】:

    • 我在文件夹 C:/wamp/www/myproject/vendor/phpunit 中有 phpunit。所以我去 C:/wamp/www/myproject 并输入 "vendor/phpunit" 并且我有错误 '"vendor/phpunit"' is not known as an internal or external command operable program or batch file
    • 可以,但是需要执行一个phpunit文件,在vendor/bin或者bin里面
    【解决方案3】:
    composer require --dev phpunit/phpunit ^7
    

    上面的例子假设 composer 已经在你的 $PATH 变量中了。

    您的 composer.json 应该类似于;

    {
      "name": "vendor_name/package_name",
      "description": "This project is for practicing writing php unit tests",
      "minimum-stability": "stable",
      "license": "proprietary",
      "authors": [
        {
          "name": "Umair Anwar",
          "email": "umair.anwar@gmail.com"
        }
      ],
      "autoload": {
        "classmap": [
          "src/"
        ]
      },
      "require-dev": {
        "phpunit/phpunit": "^7",
        "phpunit/dbunit": "^4.0"
      }
    }
    

    【讨论】:

      【解决方案4】:

      通过 composer 安装 phpunit 最简单的方法是从项目根目录运行。

      $ composer require phpunit/phpunit
      

      这样做会在 vendor/bin 中创建一个 phpunit 文件夹 你可以像这样运行单元测试..

      $ ./vendor/bin/phpunit
      

      【讨论】:

        【解决方案5】:

        我记得我在 phpunit 中使用 composer 依赖项,但始终无法正常工作。

        相反,从你的 git bash shell:

        mkdir ~/bin
        cd ~/bin
        curl https://phar.phpunit.de/phpunit.phar > phpunit
        chmod +x phpunit
        

        退出 bash,然后开始一个新的 bash 会话。

        你应该很高兴。您可以回显 $PATH 以验证您是否有到 ~/bin 的路径,但默认情况下似乎添加了一个。

        https://phar.phpunit.de/phpunit.phar

        【讨论】:

          【解决方案6】:

          在 Windows 上使用 composer 进行的操作太简单了,我的工作方式如下:

          Install composer https://getcomposer.org/doc/00-intro.md#installation-windows 前往 您的交响乐文件夹,例如 C:\wamp64\www\symfony\UserManagement 在哪里 composer.json 并运行此命令。 应该在全局注册才能没有问题 $phpunit bash: phpunit: command not found

          //old version is 5.7 new 6.4 or put newest version.
          composer global require --dev phpunit/phpunit ^5.7
          

          【讨论】:

            【解决方案7】:

            我也遇到了同样的问题,通过以下步骤找到解决方案

            在 WAMP 安装下在 Windows 7 中运行 PHPUnit

            1. 作曲家安装

              { “需要开发”:{ “phpunit/phpunit”:“3.7.*” } }

            2. 只需设置环境变量 php 单元将安装在 vendor/bin 中的供应商目录中

              路径:C:\wamp\www\myproject\vendor\bin;

            3. 打开一个新的命令提示符 C:\Users\guny >phpunit --version Sebastain Bergmann 的 PHPUnit 3.7.30

            【讨论】:

              猜你喜欢
              • 2017-11-10
              • 2016-02-21
              • 2015-02-21
              • 2014-12-15
              • 2016-04-15
              • 2014-12-25
              • 2017-11-02
              • 2023-04-04
              • 2016-03-29
              相关资源
              最近更新 更多