uniter1 / uniter-yii
Requires
- php: ^7.4|^8.0
- guzzlehttp/guzzle: ^7.0@dev
- uniter1/uniter-requester: *
Requires (Dev)
- mockery/mockery: ^1.5
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.5.10
README
Uniter1测试生成服务的远程请求的Yii2命令
此包提供2个命令:第一个用于注册,第二个用于测试生成请求。
简要说明
composer require uniter1/uniter-yii
// 修改config/console.php
'controllerMap' => [ ... 'uniter1' => [ 'class' => 'Uniter1\UniterYii\Uniter1Yii', 'config' => [ 'accessToken' => your requested token, 'basePath' => dirname(DIR), 'projectDirectory' => dirname(DIR), ], ]
// 获取注册令牌 php yii uniter1/register {email} {password}
读取电子邮件并将令牌放入config/console.php
// 为你的php类文件生成测试 php yii uniter1/generate path/to/file [methodToOverwrite]
结果将被写入你的unitTestsDirectory (参见config/console.php)
安装
你可以通过composer安装此包
composer require uniter1/uniter-yii
测试
使用
用户注册
php yii uniter1/register {email} {password}
用户将被注册,并且访问令牌将被发送到你的电子邮件。你需要将此令牌放入你的config/console.php文件中的'accessToken'。之后,你可以发送测试生成查询。
包设置
其他选项(在uniter/config.php中)你可以保留为默认值。你可以在config/console.php中覆盖它们。确保单元测试目录(默认存储于storage/tests/Unit)存在且可写。
'baseUrl' => https://uniter1.tech
这是我们的服务的网址。使用https://uniter1.tech
'obfuscate' => true
混淆选项。如果你不需要对代码进行混淆,请将其设置为false。
'unitTestBaseClass' => PHPUnit\Framework\TestCase
测试类的基框架。
'unitTestsDirectory' => tests/Unit
保存生成测试类的基目录。请确保该目录存在且可写。
'inspectorMode' => true,
如果为true,则将测试私有和受保护的方法。如果为false,则不测试。
测试生成
php yii uniter1/generate {filePath} [methodToOverwrite]
你想要测试的类将被从{filePath}读取,如果没有关闭混淆,将进行混淆,然后发送到我们的服务。将创建一些phpunit测试文件以测试你类方法的不同变体。结果将被解混淆并保存到'unitTestsDirectory'(根据类命名空间在某个嵌套文件夹中)。
打开它,阅读它,并使用它来测试你的类。
生成的类可能不会完全测试 - 在每个生成的测试方法之前阅读注释。
methodToOverwrite可选参数允许你在生成过程中仅替换那些在先前生成的测试类中测试了源类方法之一的测试类方法。在使用它时请小心 - 必须确保先前生成的测试位于同一地址,并且除了我们用此选项指定的方法外,不要对受测试的类进行任何更改。