1. PHPUNIT是什么
PHPUnit是一个用PHP编程语言开发的开源软件,是一个单元测试框架。
1.1 为什么要用PHPUNIT
- 用phpunit是一个不错的主意
- 更改代码不会破坏他原有的结构 - 我们不需要修改源码。。
- 帮助其他开发人员了解您的代码的作用(并帮助入职过程,新人等等。。)
- 帮助您在编写代码时保持检查。 它会迫使你思考一些事情,例如“我将如何测试这个?
- 帮助你在晚上能睡好觉。。。。
1.2 单元测试的概念
程序单元是应用的最小可测试部件。 在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。
2. 开始学习
Getting Started With PHPUnit: http://phpunit.de/
安装
- 旧方法:PEAR
- 新方法:PHAR or Composer
http://phpunit.de/manual/current/en/installation.html
案例1
The Code:
|
|
The Unit Test
Running PHPUnit
|
|
PHPUnit 3.4.0 by Sebastian Bergmann.
Time: 0 seconds, Memory: 0.5Mb
OK (1 tests, 1 assertions)
案例2
The “Optimizer”
|
|
OUR TEST:
|
|
Running PHPUnit
案例3
The Bad “Optimizer”
|
|
Running PHPUnit (again):
|
|
|
|
3. 配置项
- assertEquals()
- assertTrue()
- assertFalse()
- assertLessThan()
- assertNull()
- assertRegExp()
http://phpunit.de/manual/current/en/appendixes.assertions.html
4. FizzBuzz
FizzBuzz是借鉴一个英国学校里小孩子经常玩的游戏。改编后的题目大概是这样的 “编写程序把1-100的数字打印出来。不过,要把3的倍数打成"Fizz",把5的倍数打成"Buzz"。而如果一个数既是3的倍数。又是5的倍数时,就打成"Fizz-Buzz",其余的输出数字。然后在论坛看见这道编程题很多计算级系的高材生(博士、硕士之类的)都不能现场写出来,更有多年经验自称高级开发程序员在几分钟内也写不出来
不过既然说到这了,那就先打开来考验下自己,最后我是通过两种方式来实现的:
第一种:利用循环和条件判断,过滤满足特定条件的数字,然后输出结果,代码如下:
|
|
|
|