Skip to content

jamessa/test-driven-laravel

Repository files navigation

課程大綱

單元 1: 介紹 Laravel 與 TDD

  • 內容: TDD 概念、Laravel 框架介紹、PHPUnit 簡介
  • 作業: 安裝 Laravel,撰寫第一個測試範例

單元 2: 設置開發環境

  • 內容: 開發環境設置、PHPUnit 配置、撰寫簡單測試
  • 作業: 配置自己的開發環境,提交測試結果

單元 3: TDD 開發流程

  • 內容: TDD 的紅綠重構循環、撰寫測試與實現代碼
  • 作業: 撰寫簡單的功能模塊,並使用 TDD 開發

單元 4: 單元測試與整合測試

  • 內容: 單元測試與整合測試的差異及應用
  • 作業: 撰寫單元測試與整合測試

單元 5: 模型工廠與模擬

  • 內容: 使用 Laravel 模型工廠、假資料與模擬測試
  • 作業: 為一個簡單的 CRUD 功能撰寫完整測試

單元 6: 測試資料庫操作

  • 內容: 測試資料庫設置、測試遷移與模型
  • 作業: 撰寫一個簡單的資料庫驅動應用,並進行測試

單元 7: 測試 API 端點

  • 內容: 測試 RESTful API、測試 JSON 輸出與錯誤處理
  • 作業: 撰寫一個簡單的 API 端點,並撰寫相關測試

單元 8: GitHub Actions 測試整合

  • 內容:
    • GitHub Actions 的介紹與基礎設定
    • 設置 Laravel 專案的 CI/CD pipeline
    • 在 push 或 pull request 時自動執行測試
  • 作業: 在個人專案中設定 GitHub Actions 進行測試自動化,並成功運行測試

單元 9: 進階測試技巧與期末專案

  • 內容: 測試性能與最佳實踐、期末專案要求
  • 作業: 完成期末專案,提交並進行代碼審查

課程總結

  • 內容: 課程回顧、學員作品展示、討論與反饋
  • 學習資源: 線上討論或錄製的回顧影片
  • 作業: 提交課程反饋表

課程設計方法

用短篇持續發佈的方式來設計課程,每次設計幾個單元,學生實作完只後再補充內容與設計下一步,最後完成一個可以自學 Test driven development in Laravel 的課程。