ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
1 测试类继承于PHPUnit_Framework_TestCase ,这样就可以使用象setUp(),tearDown()等方法了。每次调用测试方法都会 调用setup(),tearDown,比如 有两个测试方法add,jian, 这会调用方法顺序如下:setup()->add()->setup()->jian()->tearDown,除外还有setUpBeforeClass,tearDownAfterClass 这两个属性静态方法,在测试类第一测试时调用setUpBeforeClass,和最后一次次测试时调用tearDownAfterClass 2测试方法必须为public权限,一般以test开头,或者你也可以选择给其加注释@test来表明该函数为测试函数 案例测试代码 业务类demo.php ``` <?php //业务类定义   class Demo{         public function add($a, $b){                   return $a + $b;            }  public function jian($a, $b){                   return $a - $b;            }      }  ?> ``` 对业务类写测试代码。 demoTest.php ``` <?php   //加载phpunit 框架 require_once 'PHPUnit/Autoload.php'; //导入测试类 require("demo.php");   class DemoTest extends PHPUnit_Framework_TestCase{           //共享资源 protected $_obj;         // SetUp方法是在每个测试用例运行前进行一些初始化的工作,比如创建业务对象,让其他测试方法也可以使用业务对象,或数据库连接对象         public function setUp(){               $this->_obj = new Demo();           }         //tearDown则在每个测试用例运行后进行一些比如资源的释放等工作的工作         public function tearDown(){   unset($this->_obj);         }          //testAdd 方法名以test* 开头         public function testAdd(){   $res = $this->_obj->add(1, 2); //phpunit的断言assertEquals判断输出是否和预期的相等,phpunit 还提供很多断言方法 $this->assertEquals(3, $res);           }   //testAdd2 方法注解为@test /**  * @test  */           public function testAdd2(){   $res = $this->_obj->add(1, 2); /*phpunit的断言assertEquals判断输出是否和预期的相等,phpunit 还提供很多断言方法 AssertTrue/AssertFalse    断言是否为真值还是假 AssertEquals    判断输出是否和预期的相等 AssertGreaterThan    断言结果是否大于某个值,同样的也有LessThan(小于),GreaterThanOrEqual(大于等于), LessThanOrEqual(小于等于). AssertContains    判断输入是否包含指定的值 AssertType    判断是否属于指定类型 AssertNull    判断是否为空值 AssertFileExists    判断文件是否存在 AssertRegExp    根据正则表达式判断 */ $this->assertEquals(3, $res);           }      }   ?> ``` 执行命令 phpunit demoTest.php