16

我在 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。

4

7 回答 7

14

当您通过 composer 在 windows 中安装 PHP-Unit 时,全局安装将在

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

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

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

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

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

于 2014-05-17T15:03:12.223 回答
12

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

要执行这个 bin 文件,运行./bin/phpunit(或者./vendor/bin/phpunit在不使用 Symfony 标准版时)

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

于 2013-09-08T20:25:53.620 回答
4
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"
  }
}
于 2018-05-21T06:25:27.147 回答
3

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

$ composer require phpunit/phpunit

这样做的目的是,它将在 vendor/bin 中创建一个 phpunit 文件夹,您可以像这样运行单元测试..

$ ./vendor/bin/phpunit
于 2018-02-14T05:54:05.893 回答
1

我记得在 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

于 2013-09-09T21:59:27.293 回答
1

使用 Composer 在 Windows 上进行的操作太简单了,对我有用,方法如下:

Install composer https://getcomposer.org/doc/00-intro.md#installation-windows转到您的 symphony 文件夹,例如 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
于 2017-09-05T10:07:07.087 回答
0

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

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

  1. 作曲家安装

    { "require-dev": { "phpunit/phpunit": "3.7.*" } }

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

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

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

于 2014-02-03T09:04:30.603 回答