如何使用分析器功能测试

编辑该页面

警告:你浏览的文档欧宝体育电话欧宝娱乐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许可证。