thinkphp3.2.3官方并沒有提供單元測試的工具。隨著項目的增大,要保證代碼的健壯性,單元測試不得不提上日程。經實踐,https://github.com/snowair/think-phpunit 是個不錯的選擇,但在使用過程中出現const 未定義的錯誤。具體報錯信息為:syntax error, unexpected const (T_CONST),
問題分析const關鍵字提示語法錯誤,說明當前的PHPUNIT并不支持該語法,查閱官方文檔發現,const為php5.3新引用的功能。所以根本原因應該是PHPUNIT版本過低引起的。
const定義常量的官方地址說明:http://php.net/manual/zh/lang...我們查看vender/snowair/composer.json發現以下代碼:
require : { php : =5.4 , phpunit/phpunit : ^4.7 }
即要求phpunit版本為 =4.7 5.0。至此問題原因確認。至phpunit版本過低引發的關鍵字錯誤。
解決方法:參考php composer的VCS版本控制部分,修改phpunit的版本號。
fork原項目至自己的倉庫。比如我fork后的項目地址為:https://github.com/callme119/think-phpunit.
https://github.com/callme119/think-phpunit中的composer.json文件,將phpunit的版本修改為^5.0
修改項目引用的VCS部分。增加repositories屬性。
比如我的項目引用,修改后為:
{ name : topthink/thinkphp , description : the ThinkPHP Framework , type : framework , keywords : [ framework , thinkphp , ORM ], homepage : http://thinkVeVb.com/ , license : Apache2 , authors : [ name : liu21st , email : liu21st@gmail.com require : { php : =5.3.0 autoload : { html' target='_blank'>classmap : [ Application , ThinkPHP/Library ] autoload-dev : { psr-0 : { : test } repositories : [ type : vcs , url : https://github.com/callme119/think-phpunit require-dev : { snowair/think-phpunit : dev-master minimum-stability : dev }composer VCS官方地址: https://docs.phpcomposer.com/...總結
如果你只要想正常的使用snowair/think-phpunit, 那么請參閱https://github.com/callme119/think-phpunit進行安裝即可。
如果你是其它的項目的版本問題,請參閱本文,利用github來進行修復后,并在自己項目的composer.json中,增加repositories屬性來指明特定倉庫。
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !
相關推薦:
如何通過php來遍歷文件夾獲取圖片目錄名稱及文件名
如何解決php在foreach循環后留下的數組引用問題
以上就是thinkphp3.2.3怎樣使用think-phpunit來進行單元測試的介紹的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答