【发布时间】:2015-04-06 20:15:17
【问题描述】:
我目前正在使用 symfony2 创建一个项目,我正在使用 PHPUnit 供应商对我的代码进行功能测试。 我面临一个问题,即随着项目变大,功能测试时间也会增加。 注意:我正在为每个功能测试功能加载 Fixtures。
我的问题在这里?实现在合理时间内运行的功能测试的最佳做法是什么。
另一方面,我可以使用任何捆绑包或工具来加速此过程吗?
【问题讨论】:
-
单元测试应该是独立的,并且不涉及任何外部资源(这就是术语中“单元”分数的含义)。你所做的不是“单元测试”。
-
@zerkms 你会解释更多!外部资源是什么意思?
-
所有需要任何类型的装置或清理或远程连接的东西:数据库、文件系统、http 等
-
@zerkms 所以你的意思是我在做功能测试而不是单元测试?
-
将测试分为需要完整夹具负载的测试和不需要的测试。我没有发现固定装置实际上可以用于测试大型应用程序。确实,您所做的不是单元测试,但对于应用程序功能测试可以说更有用。旧的“单元测试需要隔离”的口号实际上并不能帮助解决问题。就个人而言,我倾向于针对真实世界的数据库快照进行测试,但尽量不要对其当前状态做出太多假设。
标签: php symfony phpunit fixtures