YII开发笔记:phpunit/selenium单元测试
{核心内容来自《应用Yii1.1和PHP5进行敏捷Web开发》第三章}
测试驱动开发(TDD)是一种软件开发方法,它有助于为软件开发创造一个舒适和信心的环境,确保你的测试代码与你的应用程序一起成长,并始终保持最新。它规定在你开始写代码之前先写测试代码。下面是总结的步骤:
- 开始写一个失败的测试代码。
- 运行测试代码确定它是失败的。
- 快速编写你的程序代码,并测试通过。
- 再次运行测试代码,以确保它确实通过了。
- 重构代码,移除重复的逻辑或改善某些部分,并试着测试通过。
整个开发过程重复这些步骤。
即使再好的意图,如果你迫不及待的写下你的代码之后你可能不会完成测试代码。先写你的测试代码并在书写过程中再编写代码以保证最佳的测试覆盖率。这种深度的覆盖有助于减少项目的压力,随着应用程序的复杂度建立信心,并不断提供积极的反馈作为补充和作出改变。
一个结合phpunit的例子
在protected/tests/unit目录中,创建一个MyTest.php,让其继承自CTestCase类。
<?php class MyTest extends CTestCase{ public function testMyfunction(){ ...... } } ?>
(Partoo)常见问题:
1、根据YII的约定,CMD窗口命令通常为 webapp\protected\tests> phpunit unit\xxxTest.php,否则会报错;
2、测试方法以test开头 public function testYourfunction(){} … ;