【问题标题】:Use composer to require package with tests included使用 composer 来要求包含测试的包
【发布时间】:2017-04-10 15:35:18
【问题描述】:

我想重用包中的测试代码(例如模拟类)。但我不知道如何告诉作曲家获取包含测试的依赖项。

我的 composer.json:

"require": {
   "some/package": "2.0.0"
}

另一个包的composer.json(有/src/tests子文件夹):

"autoload": {
    "psr-4": {
      "Some\\Namespace\\": "src/"
    }
},
"autoload-dev": {
    "psr-4": {
      "Some\\Namespace\\Tests\\": "tests/"
    }
},

这只会给我/vendor/some/package/ 下的/src 文件夹。

我尝试指定 some/package: 2.0.0@dev 没有任何效果。

作曲家(和打包师)甚至可以做到这一点吗?

【问题讨论】:

    标签: testing composer-php


    【解决方案1】:

    使用 require-dev 这将在 composer install 运行时安装开发包。

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

    如此处所述https://stackoverflow.com/a/19120691/409556

    【讨论】:

    • 如果我将mockery/mockery 包含在require-dev 中,它不会安装来自composer.json 中的composer.jsonrequire-dev 依赖项
    猜你喜欢
    • 1970-01-01
    • 2015-09-06
    • 1970-01-01
    • 2013-06-28
    • 2014-07-29
    • 2015-01-19
    • 1970-01-01
    • 2021-06-20
    • 1970-01-01
    相关资源
    最近更新 更多