如何使用分析器功能测试

编辑该页面

如何使用分析器功能测试

这是强烈建议功能测试只测试响应。但是如果你编写功能测试,监控生产服务器,您可能想要编写测试分析数据,它给你一个很好的方法来检查各种事情和执行一些指标。

使测试的分析器

收集数据,Symf欧宝娱乐app下载地址ony的分析器显著减慢您的测试。这就是为什么Symfo欧宝娱乐app下载地址ny禁用默认情况下:

  • YAML
  • XML
  • PHP
1 2 3 4 5
#配置/包/测试/ web_profiler.yaml#……框架:分析器:{启用:真正的,收集:}

设置收集真正的使所有测试的分析器。然而,如果你需要分析器只在一些测试中,你可以保持全球禁用和启用分析器分别在每个测试通过调用客户端- > enableProfiler美元()

测试性能分析信息

数据收集的Symfony分析器可以用于检查数据库调用欧宝娱乐app下载地址的数量,所花费的时间框架,等等。所有这些信息由收藏家提供获得通过客户端- > getProfile美元()电话:

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 31 32 33 34 35 36
/ /测试/控制器/ LuckyControllerTest.php名称空间应用程序\测试\控制器;使用欧宝娱乐app下载地址\\FrameworkBundle\测试\WebTestCase;LuckyControllerTest扩展WebTestCase{公共函数testRandomNumber(){美元客户端=静态::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 ()));

请注意

即使你可用的配置文件信息使客户端如果你使用一个HTTP层进行测试。

提示

读了内置的API数据收集器了解更多关于他们的接口。

这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。
欧宝娱乐app下载地址Symfony 6.2支持通过苏禄人
欧宝娱乐app下载地址Symfony 6.2支持通过Les-Tilleuls.coop