jdolba / slim-http-smoke-testing
基于Slim框架应用的HTTP烟雾测试
Requires
- php: ~7.1||~8.0
- slim/slim: ~3.0
Requires (Dev)
- phpstan/phpstan: ^0.12
- phpstan/phpstan-phpunit: ^0.12
- phpunit/phpunit: ^9.3
- squizlabs/php_codesniffer: ^3.0
This package is auto-updated.
Last update: 2024-09-04 11:55:19 UTC
README
这个简单的包将从 Slim\App 加载您所有的路由,并对其发出请求以接收响应来断言期望返回的HTTP代码。
这不是一个非常智能或坚不可摧的检查,但它会简单地告诉您:它运行吗?
在初始配置之后,几乎无需维护,因为它会自动检查任何新的路由。
受shopsys/http-smoke-testing的启发,谢谢!
安装
通过Composer
composer require --dev jdolba/slim-http-smoke-testing
此包内部使用PHPUnit运行测试。这意味着您需要正确设置phpunit.xml。
警告
因为此包将发出实际请求 请确保您不在生产数据库上执行此测试!
用法
创建一个新的PHPUnit测试,扩展\JDolba\SlimHttpSmokeTesting\SlimApplicationHttpSmokeTestCase类,并实现setUpSmokeTestAndCallConfigure和customize方法。
您可以通过以下方式运行您的新测试
php vendor/bin/phpunit tests/Smoke/MyAwesomeApplicationSmokeTest.php
关于RequestDataSet
您的每个路由uri和可接受的http方法都表示为\JDolba\SlimHttpSmokeTesting\RequestDataSet,例如
$app = new \Slim\App();
$app->any('/', function ($request, $response, $args) {
//...
return $response;
});
将被解释为6个独立的数据集,因为Slim使用"any"时
['GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'OPTIONS']
您可以在测试类中使用customize方法自定义传递的$request。这6个数据集将具有路由名称'/',但
变更日志
请参阅CHANGELOG以获取有关最近更改的更多信息。
测试
$ composer test
贡献
请参阅CONTRIBUTING和CODE_OF_CONDUCT以获取详细信息。
安全
如果您发现任何与安全相关的问题,请通过电子邮件jakub@dolba.cz报告,而不是使用问题跟踪器。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。