nicolasguilloux / wiremock-bundle
一个用于快速模拟Http客户端的Symfony扩展包,通过装饰Symfony HttpClient来实现。如果Wiremock有请求的存根,则返回存根响应。如果没有,则按常规将请求转发到原始http客户端。
Requires
- php: ^8.0
- symfony/config: ^5.0 || ^6.0 || ^7.0
- symfony/dependency-injection: ^5.0 || ^6.0 || ^7.0
- symfony/http-client: ^5.0 || ^6.0 || ^7.0
- symfony/http-kernel: ^5.0 || ^6.0 || ^7.0
Requires (Dev)
- nicolasguilloux/phpunit-dependency-injection-bundle: ^1.1
- nunomaduro/phpinsights: ^2.11
- phpunit/phpunit: ^9.5
- roave/security-advisories: dev-latest
- symfony/console: ^5.0 || ^6.0 || ^7.0
- symfony/debug-bundle: ^5.0 || ^6.0 || ^7.0
- symfony/framework-bundle: ^5.0 || ^6.0 || ^7.0
- symfony/monolog-bundle: ^3.7
- symfony/profiler-pack: ^1.0
- symfony/routing: ^5.0 || ^6.0 || ^7.0
- symfony/test-pack: ^1.0
- symfony/yaml: ^5.0 || ^6.0 || ^7.0
- twig/twig: ^3.0
README
一个使用Wiremock快速模拟Http客户端的Symfony扩展包。它的工作方式是通过装饰Symfony HttpClient。如果Wiremock有请求的存根,则返回存根响应。如果没有,则按常规将请求转发到原始http客户端。
目录
1. 安装
执行composer命令安装扩展包
composer require nicolasguilloux/wiremock-bundle --dev
2. 文档
2.1. 配置
以下是一个使用Wiremock http客户端的配置示例
framework: http_client: scoped_clients: wiremock.client: base_uri: 'https://:8080' wiremock: # Set the Wiremock http client (default: wiremock.client) # http_client: 'wiremock.client' # Removes the Wiremock http client from the HttpClient profiler page (default: false) # remove_from_http_client_profiler: true # Decorates by default all clients except the following ones (default: []) # blacklist_clients: [] # Decorates only the following http client (default: []) # whitelist_clients: []
2.2. 分析器
在Symfony分析器中新增了一个标签页,可以查看Wiremock http调用。这可能有助于查看是否使用了存根响应。
3. 版本控制
wiremock-bundle遵循语义版本控制。简而言之,该方案是MAJOR.MINOR.PATCH,其中1. MAJOR在出现破坏性更改时增加,2. MINOR在向后兼容的方式中添加新功能时增加,3. PATCH在向后兼容的方式中修复错误时增加。
1.0.0以下的版本被视为实验性版本,可能随时发生破坏性更改。
4. 贡献
欢迎贡献!有无数种贡献方式,我们感激所有贡献。以下是一些主要的贡献方式
-
错误报告:我们努力提供高质量的软件,但错误可能会发生,我们无法修复我们不知道的问题。因此,请即使您不确定或者只是想提问也请报告。任何问题都可能表明文档仍需改进!
-
功能请求:当前API没有涵盖您的用例?想要提出建议或添加某些内容?我们很高兴看到并开始讨论以尝试找到最佳解决方案。
-
拉取请求:想要贡献代码或文档?我们非常愿意!如果您需要帮助开始,GitHub上有拉取请求文档。我们使用"fork and pull model",贡献者将更改推送到他们的个人分支,然后创建拉取请求到主存储库。请将您的拉取请求针对
master
分支。
请记住,所有贡献者都应遵守我们的行为准则。
5. 许可证
wiremock-bundle在MIT许可证下分发。
有关详细信息,请参阅LICENSE。
6. 编程技巧
安装了这两个工具后,您可以简单地输入一个工作shell:devenv shell
。