基境 测试初始化与还原

最后更新于:2022-04-02 02:35:10

[TOC] ## 概述 编写代码来将整个场景设置成某个已知的状态,并在测试结束后将其复原到初始状态。这个已知的状态称为测试的 基境(fixture) ## 语法 ``` setUp() // 初始化 - 每个测试函数都会调用的 tearDown() // 执行还原 - 不管是否成功,都会执行 setUpBeforeClass() // 只执行一次 - 如数据库创立连接 tearDownAfterClass() // 只在结束时执行一次 ``` > tearDown() 只有资源数据才需要调用,所以一般是并需要setUp()后,必须调用tearDown() ## 实例 ### hello wold
test.php ``` stack=[]; } public function tearDown():void { echo "====end====\n"; unset($this->stack); } public static function setUpBeforeClass():void { echo "====setUpBeforeClass====\n"; } public static function tearDownAfterClass():void { echo "====tearDownAfterClass====\n"; } public function testDemo1(){ echo "demo1\n"; $this->stack[]=1; $this->assertEquals([1],$this->stack); } public function testDemo2(){ echo "demo2\n"; $this->stack[]=2; $this->assertEquals([2],$this->stack); } public function testDemo3(){ echo "demo3\n"; $this->stack[]=3; $this->assertEquals([3],$this->stack); } } ```

输出 ``` ====setUpBeforeClass==== ====start==== demo1 ====end==== ====start==== demo2 ====end==== ====start==== demo3 ====end==== ====tearDownAfterClass==== ``` ### 基境共享
test.php ``` assertEquals(strlen('test'),$len); } } ```

';