mattrink / didibreakit
一个基本的烟雾测试库,专为CI使用而设计。
1.0.2
2019-08-23 15:19 UTC
Requires
- doctrine/collections: ^1.6
- guzzlehttp/guzzle: ^6.3
- symfony/console: ^4.3
- symfony/yaml: ^4.3
Requires (Dev)
- phpunit/phpunit: ^8.3
- symfony/var-dumper: ^4.3
This package is auto-updated.
Last update: 2024-09-24 03:49:21 UTC
README
一个基本的烟雾测试库,专为CI使用而设计
安装
composer require mattrink/didibreakit
用法
./didibreakit tests:run example.yaml
选项
-b/--branch branchname这是为了支持基于分支的测试。如果你的CI流程自动为你的分支创建环境,则可以使用此参数传递分支名称到配置中。然后可以使用%branch%替换在urlPattern选项中。-v/--verbose启用更深入的日志和详细输出。
配置
配置通过一个YAML文件完成,然后将此文件作为唯一必需的参数传递给命令./vendor/didibreakit tests:run example.yaml。您可以从基本配置的example.yaml开始复制。
在配置文件的options部分,您可以为所有要检查的URL提供一些默认配置。
defaultScheme使用HTTP或HTTPS请求所有URL。urlPattern匹配URL的模式。%branch是可选的。verifySSL如果设置为false,则不会验证HTTPS的SSL证书。在使用自签名SSL证书时很有用。defaultURLs将这些URL应用到所有后续定义的主机配置中。timeout在请求失败之前允许的最大请求连接和读取超时。failOnTimeout如果设置为false,则超时不会使整个执行失败。
您可以通过配置中的hosts选项指定要检查的主机和每个主机的URL。您可以为要检查的多个主机和URL指定。主机键将被替换为urlPattern中的%host%占位符。对于每个URL,您还需要指定期望的HTTP状态响应;如果URL返回的状态码与期望不符,则脚本将返回非零状态码。
示例配置
options: defaultScheme: 'https' urlPattern: '%branch%.%host%' verifySSL: false timeout: 5 failOnTimeout: false defaultURLs: /: 200 hosts: example.com: scheme: 'https' # You can use scheme to override the defaultScheme above urls: /news: 200 /i-expect-this-to-404: 404 example2.com: urls: /deals: 200 example3.com: # Hosts with no URLs will inherit the defaultURLs from above example4.com: