如何孤立地开发和测试Laravel包?

时间:2015-10-16 19:58:25

标签: php laravel laravel-5 composer-php laravel-5.1

我有一个Laravel 5.1应用程序,我在其中构建了几个自定义包(我遵循this教程)。这些包没有依赖关系,这些依赖关系在根Laravel应用程序中已经不存在。

我的第一个问题是,如果我需要在根应用程序中添加一个依赖项,那么它将如何被拉入根应用程序?从根应用程序运行composer updatecomposer install并不会将它们拉进去。我明白,一旦我发布到GitHub并稍后使用Composer将软件包拉入我的应用程序,它的依赖性就会拉动在......但我在开发过程中该怎么做?

我的下一个问题是,如何为此软件包创建自动化测试?我找到的教程都没有解决这个问题。该软件包是否应该在tests目录中的测试中使用Laravel的实例?

1 个答案:

答案 0 :(得分:1)

要为自己的软件包提供依赖项,您需要导航到软件包根目录(而不是应用程序根目录)并运行composer updatecomposer install命令那里。这应该创建一个包本地的供应商目录,它将包含在包的composer.json中声明的所有依赖项。

测试也是如此 - 您可以在较大的Laravel应用程序中创建包本地的测试目录,并从包根运行测试。只需确保在您的包的composer.json中包含您的测试依赖项。