【问题标题】:Running tests of a composer package in vendor directory在供应商目录中运行作曲家包的测试
【发布时间】:2018-05-11 13:13:17
【问题描述】:

我有一个使用 composer create-project 命令创建的项目,但在运行 composer install 之前,我在项目 composer.json 文件中添加了一个包。 安装软件包后,我正确地拥有了所有依赖项,包括供应商目录中新添加的依赖项。我现在想要的是运行我手动添加到 composer.json 的包的测试。我尝试了以下方法,但似乎没有运行所述包的测试

./vendor/bin/phpunit 

【问题讨论】:

  • 为什么要为第三方包运行单元测试?我认为唯一的方法是从 github 克隆项目并将它们运行到包的项目中。或者,也许您可​​以使用自定义自动加载器让 phpunit 知道在哪里可以找到类。
  • @marcal 我分叉了包并强制作曲家使用我的叉子。现在我想运行添加到我的叉子的测试。但你说得对,我只是对原始包运行测试

标签: php phpunit composer-php


【解决方案1】:

我遇到了类似的问题,我们在供应商文件夹中有单独的私有包需要测试。默认情况下,作曲家autoload-dev 仅包含此处提到的根包https://getcomposer.org/doc/04-schema.md#root-package

要包含您的分叉包,只需在 autoload-dev 下的根 composer.json 文件中添加一个条目

"autoload-dev": {
        "psr-4": {
            "Company\\Package\\Tests\\": "vendor/package/tests/"
        }
    },

【讨论】:

    猜你喜欢
    • 2018-10-27
    • 2014-08-08
    • 2016-08-30
    • 1970-01-01
    • 2012-08-09
    • 2017-09-03
    • 1970-01-01
    • 2018-07-07
    • 2018-04-22
    相关资源
    最近更新 更多