如何使用分析器功能测试
编辑该页面警告:你浏览的文档欧宝体育电话欧宝娱乐app下载地址Symfony 3.0,不再维护。
读这个页面的更新版本Symf欧宝娱乐app下载地址ony 6.2(当前的稳定版本)。
如何使用分析器功能测试
这是强烈建议功能测试只测试响应。但是如果你编写功能测试,监控生产服务器,您可能想要编写测试分析数据,它给你一个很好的方法来检查各种事情和执行一些指标。
Symf欧宝娱乐app下载地址ony的分析器为每个请求收集大量的数据。使用这些数据来检查数据库调用的数量,所花费的时间框架,等等。但在写断言,使分析器和检查分析器确实是可用的(这是默认启用测试
环境):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17日18 19 20 21日22日23日24日25日26日27 28 29 30
类LuckyControllerTest扩展WebTestCase{公共函数testNumberAction(){美元客户端=静态::createClient ();/ /使分析器为下一个请求/ /(它没有如果分析器不可用)美元客户端- >enableProfiler ();美元履带=美元客户端- >请求(“得到”,“幸运/数量”);/ /……写一些关于响应的断言/ /检查是否启用了分析器如果(美元配置文件=美元客户端- >getProfile ()) {/ /检查请求的数量美元这- >assertLessThan (10,美元配置文件- >getCollector (“数据库”)- >getQueryCount ());/ /检查的时间框架美元这- >assertLessThan (500年,美元配置文件- >getCollector (“时间”)- >getDuration ());}}}
如果测试失败,因为分析数据(例如太多的数据库查询),您可能希望使用网络分析器来分析测试完成后的请求。很容易实现,如果你在错误消息中嵌入令牌:
1 2 3 4 5 6 7 8
美元这- >assertLessThan (30.,美元配置文件- >getCollector (“数据库”)- >getQueryCount (), sprintf (支票查询数小于30(令牌% s) ',美元配置文件- >getToken ()));
谨慎
分析器商店可以根据不同环境(特别是如果你使用SQLite商店,这是默认的配置)。
请注意
即使你使可用的配置文件信息客户或如果你使用一个HTTP层测试。
提示
读了内置的API数据收集器了解更多关于他们的接口。
加速测试通过不收集数据分析器
为了避免在每个测试你可以设置收集数据收集
参数错误:
- YAML
- XML
- PHP
1 2 3 4 5 6 7
# app / config / config_test.yml#……框架:分析器:启用:真正的收集:假
用这种方法只调用的测试客户端- > enableProfiler美元()
将收集的数据。
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。