我从头开始使用TDD和PHPUnit创建一个新的应用程序.它将是一个MVC应用程序.我从模型开始我的测试.这很有趣,我没有太多问题.
现在我想创建我的视图/模型.但问题是:我如何测试我的控制器?观点怎么样?我的控制器将使用我测试的模型和我未来的视图.
谢谢.
解决方法:
MVC中的每个层有三大类测试.该单元测试模型,控制器的功能测试和视图的UI测试.
单元测试是最容易编写的.它们在时间上很便宜,并且不需要太多的依赖关系来进行存根/模拟.
另一方面,功能测试与单元测试相比有点贵.在给定的场景中,如果您在应用程序中已经使用单元测试覆盖了足够多的模型,那么您可以在功能测试部分放松一下.但是,您应该仍然拥有良好的代码覆盖率 – 100%也是您的控制器方法的理想选择.
最后一个是UI测试,这是所有测试中最昂贵的.您可以使用Selenium进行基于浏览器的测试,并尝试使用您的语言进行自动化.您可能必须在后台运行RC服务器才能实现此目的.相信我,如果你涵盖前两个部分 – 单位和功能,这可以是可选的,如果不是没有.
并且建议使用代码覆盖实用程序进行CI – Continious Integration设置,该实用程序提供通过测试覆盖的代码百分比的趋势.
标签:php,unit-testing,mocking,phpunit,fixtures
来源: https://codeday.me/bug/20190610/1209692.html