使用 phpunit 編寫 php 框架單元測試的方法:安裝 phpunit:使用 composer 安裝 phpunit/phpunit。編寫測試用例類:繼承自 \phpunit\framework\testcase。創(chuàng)建測試方法:以 test 開頭,斷言預(yù)期結(jié)果。運行測試:使用 phpunit 命令運行所有以 test 開頭的測試方法。
用 PHPUnit 為你的 PHP 框架編寫單元測試
簡介
單元測試是軟件開發(fā)中的一個關(guān)鍵部分,它允許你測試代碼的最小單元,通常是單個函數(shù)或方法。PHPUnit 是一個流行的 PHP 單元測試框架,它提供了廣泛的功能來幫助你創(chuàng)建和運行單元測試。
安裝 PHPUnit
使用 Composer 安裝 PHPUnit:
composer require phpunit/phpunit
登錄后復(fù)制
編寫第一個單元測試
創(chuàng)建一個測試用例類,繼承自 \PHPUnit\Framework\TestCase:
class ExampleTest extends \PHPUnit\Framework\TestCase { public function testAddition() { $result = 1 + 1; $this->assertEquals(2, $result); } }
登錄后復(fù)制
testAddition() 方法是一個測試方法,它對 1 + 1 表達式的結(jié)果進行斷言,期望的結(jié)果是 2。
實戰(zhàn)案例
假設(shè)你有一個框架中的 User 類,其中有個 greet() 方法:
class User { public function greet($name) { return "Hello, $name!"; } }
登錄后復(fù)制
創(chuàng)建一個測試用例類來測試 greet() 方法:
class UserTest extends \PHPUnit\Framework\TestCase { public function testGreet() { $user = new User(); $result = $user->greet('John Doe'); $this->assertEquals('Hello, John Doe!', $result); } }
登錄后復(fù)制
運行測試
使用 phpunit 命令運行測試:
phpunit
登錄后復(fù)制
這將運行所有以 test 開頭的測試方法,輸出測試結(jié)果。