aedart / testing-laravel
这是一组工具,允许您测试依赖 Laravel 的包。在核心上,这个包是 Orchestral Testbench 的包装器。然而,您可以使用您喜欢的任何测试框架;它不会强制您使用 Orchestral 或 Laravel 的 TestCase 类。
Requires
- php: >=7.1.0
- aedart/testing: ~2.2
- orchestra/testbench: 3.6.*
Requires (Dev)
- aedart/license: 1.*
- aedart/license-file-manager: ~2.0
README
已弃用 - Testing-Laravel
此包已被 aedart/athenaeum 替代
这是一组工具,允许您测试依赖 Laravel 的包。在核心上,这个包是 Orchestral Testbench 的包装器。然而,您可以使用您喜欢的任何测试框架;它不会强制您使用 Orchestral 或 Laravel 的 TestCase 类。
内容
何时使用此包
当您希望测试 Laravel 特定组件和包时
如何安装
对于 Orchestral Testbench 版本 3.6.x / Laravel 5.6.x
composer require aedart/testing-laravel 4.*
对于 Orchestral Testbench 版本 3.5.x / Laravel 5.5.x
composer require aedart/testing-laravel 3.*
注意:此包需要 php 版本 7.1 或更高
对于 Orchestral Testbench 版本 3.4.x / Laravel 5.4.x
composer require aedart/testing-laravel 2.*
对于 Orchestral Testbench 版本 3.3.x / Laravel 5.3.x
composer require aedart/testing-laravel 1.8.*
对于 Orchestral Testbench 版本 3.2.x / Laravel 5.2.x
composer require aedart/testing-laravel 1.7.*
对于 Laravel 5.1 和之前的版本
不支持
此包使用 composer。如果您不知道它是做什么的或它的工作原理,我建议在尝试使用此包之前先了解一些相关信息。
快速开始
假设 / 前提条件
您有一些使用Laravel的经验
您正在使用某种PHP单元测试框架,例如PHPUnit、Codeception等
辅助工具
在以下示例中,使用了一个Codeception的单元测试(继承自PHP Unit)
<?php use Aedart\Testing\Laravel\Traits\TestHelperTrait; class MyUnitTest extends \Codeception\TestCase\Test { use TestHelperTrait; /** * @var \UnitTester */ protected $tester; protected function _before(){ // Start the Laravel application $this->startApplication(); } protected function _after(){ // Stop the Laravel application $this->stopApplication(); } /** * @test */ public function readSomethingFromConfig(){ // Calling config, using Laravel defined helper method $defaultDbDriver = config('database.default'); $this->assertSame('mysql', $defaultDbDriver); } /** * @test */ public function readSomethingElseFromConfig(){ // Get the application instance $app = $this->getApplication(); $queueDriver = $app['config']['queue.default']; $this->assertSame('sync', $queueDriver); } // ... Remaining not shown ... // }
贡献
您是否发现了缺陷(错误或设计缺陷),或者希望进行改进?在以下章节中,您可能会找到一些有用的信息,说明您如何帮助这个项目。无论如何,我都感谢您抽出时间帮助我改进这个项目的成果和整体质量。
错误报告
如果您确信您发现了错误,那么至少您应该创建一个新的问题。在给定的问题中,您至少应该描述以下内容;
- 缺陷位于何处
- 对缺陷的简短、精确描述(为什么它是缺陷)
- 如何复制缺陷
- (解决缺陷的可能方案)
当我有时间时,我会审查您的问题并采取行动。
分支代码并发送拉取请求
一份良好且写得好的错误报告能帮我很多。不过,如果您能够或愿意自己解决缺陷,这里是如何做到的;
- 分支这个项目
- 为给定的缺陷修复创建一个新的本地开发分支
- 编写您的代码/更改
- 创建可执行的测试用例(证明您的更改是稳固的!)
- 提交并将您的更改推送到您的分支存储库
- 发送包含您更改的拉取请求
- 喝一杯啤酒 - 您应得的 :)
当我收到拉取请求时(并且有时间处理),我会审查您的更改并将其合并到这个项目中。如果没有,我会通知您为什么我选择不这样做。
致谢
Mior Muhammad Zaki 为提供了一种良好的测试Laravel特定组件和包的替代方法。
Taylor Otwell 等人 为创造了最好的PHP框架之一。
版本控制
此包遵循语义版本控制2.0.0
许可证
BSD-3-Clause,请阅读此包中包含的LICENSE文件