TDD: 測試驅動開發(Test-Driven Development),TDD的原理是在開發功能代碼以前,先編寫單元測試用例代碼,測試代碼肯定須要編寫什麼產品代碼。 -- 載自TDD百度百科php
參考 Test Driven API Development using Laravel, Dingo and JWT with Documentationhtml
php artisan vendor:publish --provider="Dingo\Api\Provider\LaravelServiceProvider"
運行文章第二步進行單元測試命令,提示 Illuminate\Database\QueryException: could not find driver (SQL: select * from sqlite_master where type = 'table' and name = migrations)
的錯誤信息,在php artisan migrate gives me an error could not find driver 找到解決方法,在 ubuntu中運行 sudo apt-get install php-sqlite3
.mysql
laravel項目不是運行在根目錄下,修復直接訪問 http://localhost/blog/public/api
時,會 301 重定向到 http://localhost/api
下, 修改 .htaccess
文件中的RewriteRule ^(.*)/$ /$1 [L,R=301]
爲 RewriteRule ^(.*)/$ public/$1 [L,R=301]
, 參考連接: Removing "/public" from URL (Where does Laravel get the base URL from?)laravel
phpunit testunits 說明 phpunit 單元測試--laravel[持續更新]sql
測試類中的全部方法必須爲public 修飾而且以test開頭的public function test*(){}方式ubuntu
更正 文章中的命令 phpunit tests/FruitsTest.php
爲phpunit tests/Feature/FruitsTest.php
,測試類中的方法名必須加上 test開發,如文章中的it_fetches_fruits
得改成 testit_fetches_fruits
,運行測試的時候,纔會運行這個方法api
laravel鏈接sqlite Connect to an Sqlite DB - Laravel documentation procedure doesn't workide
備份Laravel .env 文件中mysql 配置信息單元測試
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=secret
目前使用Laravel大多數是寫api, 個人單個測試用例是判斷返回結果的HTTP狀態碼(是最簡單,可是準確性不是很高,至少在整個單元測試跑下來以後全綠,本身的內心對已寫的程序仍是比沒有任何單元測試的時候踏實了些)測試