ousamabenyounes / log2test
将您的Apache2访问日志文件转换为简单的curl或selenium/phpunit测试...
V1.4
2016-12-21 22:30 UTC
Requires
- php: ^5.6 || ^7.0
- cedriclombardot/twig-generator: ^1.1
- incenteev/composer-parameter-handler: ~2.0
- jasny/twig-extensions: ^1.0
- kassner/log-parser: ~1.0
- phpunit/phpunit: 5.5.*
- phpunit/phpunit-selenium: >=1.2
- symfony/console: ^3.1
- symfony/filesystem: ^3.1
- symfony/process: ^3.1
- symfony/yaml: ^3.1
Requires (Dev)
- behat/behat: ^3.2
- phake/phake: @stable
- symfony/var-dumper: ^3.0
README
Log2Test是一个PHP应用程序,允许您将您的生产日志转换为测试。
您可以将日志导出到以下堆栈
- Curl:Php Multi Curl Test → 如果您有巨大的Apache2日志文件或不需要运行JavaScript或Ajax调用,这是一个很好的解决方案
- PhpunitCurl:Phpunit Curl测试
- PhpunitSelenium:允许您打开所有需要测试的浏览器中的日志文件URL
为什么将生产日志文件导出到测试中?
- 能够找到损坏的链接
- 检测空白/空白的网页(当发生500错误且没有启用错误重定向页面时)
- 在部署新功能到生产环境之前,您可以在预生产环境中轻松启动真实测试
- 使用Selenium在多个浏览器上启动所有访问日志,允许您验证跨浏览器兼容性
安装
git clone https://github.com/ousamabenyounes/log2test
composer install
如何使用
现在让我们一步一步地看看Log2Test是如何工作的,就像下面屏幕录制gif文件所示
- 开始时,“generated/Curl”目录中没有现有的测试
- 在此背景下
- 一个配置文件(Yaml文件)→ config/parameters-log2test.yml
- Apache2访问日志文件→ log/test.log
- 运行 ./bin/log2test 命令将生成并运行所有测试
配置
打开配置文件
config/parameters-log2test.yml
以下是配置文件的属性
要求
Phpunit
Selenium服务器(如果您选择phpunit_selenium作为测试堆栈,则需要此服务器)
测试
Log2test与PHPUNIT & Behat进行了测试
./bin/phpunit
./bin/behat
在每次提交时,都会在 http://travis-ci.org/ousamabenyounes/log2test/ 上启动完整的构建
主机样本
您可以提供如下简单的字符串
"www.shop2tout.com"
您还可以提供包含源/目标值的数组
["www.shop2tout.com", "www.shop2tout.local"],
第一种情况是您将在Apache日志中搜索的源主机
第二种情况是将在生成的测试中使用的目标主机
我们建议使用第二种格式,这样您的生产网站就不会受到您将启动的重量级测试的影响
待办事项
添加全局报告
在解析时添加YellowLabTools选项
贡献者
- Ousama Ben Younes ousamabenyounes
- Youval Teboul youvalteboul