TL;博士
正如我在标题中所说,如果被测试的类是库类的包装器,它可能使用了很多静态依赖项和/或可能是数据库连接,这是替换它的最佳实践带有手写存根的父类?
详情
Context是Yii PHP Web框架的widget工具包的单元测试套件。正在测试的系统是12k系列遗留PHP 5.3代码,首先我想编写一个特性测试,因为即使在phpStorm中,PHP的自动重构也非常糟糕。我对测试CWidget
类的扩展器特别感兴趣。
这是一个PHP,所以我可以require_once
为我的每个单元测试提供任何源文件组合,因此构建一个完全虚假的环境不是问题。
我有Martin Fowler的 Refactoring 和Michael Feather的有效使用遗留代码的副本,所以,如果有的话,也许有人可以指出我的确切技巧,因为似乎我肯定会忽略一些事情。