BDD/TDD差別是什麼? 手把手用 Cucumber 實作示範BDD

本文同步刊載於 ALPHA Camp Blog

上一篇文章介紹了 TDD (Test-Driven Development) 開發流程,並示範了如何五步驟實戰應用。

TDD 傳送門:TDD五步驟 手把手帶你實戰 Test-Driven Development 範例

TDD 重點回顧:

  1. 先寫測試再開發。
  2. 依循「紅燈/綠燈/重構」循環(Red/Green/Refactor)。
  3. 優點是在初期就確保測試程式的撰寫,而且更容易在初期定義出更貼近使用方的介面。

但 TDD 所撰寫出來的測試案例是一連串程式碼,過於偏重技術人員,不利與其他非技術的專案參與者討論,例如 PM (Product Manager) 或 PO (Product Owner)。此外,也不利產生一份如下圖這樣一目瞭然、容易閱讀的測試報告:

閱讀更多BDD/TDD差別是什麼? 手把手用 Cucumber 實作示範BDD

TDD五步驟 手把手帶你實戰 Test-Driven Development 範例

本文同步刊載於 ALPHA Camp Blog

「撰寫測試」已成為現代軟體開發的顯學。隨著軟體產品的規模越長越大,在不斷增加新功能、重構優化既有程式碼的過程,如何確保軟體既有功能不受影響,又能減少繁瑣的人工作業,靠的就是自動化測試。尤其當系統的業務邏輯龐大繁瑣,平時養成撰寫測試的好習慣更是保障軟體品質的關鍵。

閱讀更多TDD五步驟 手把手帶你實戰 Test-Driven Development 範例

Memcached 實作示範 — 用Memory Cache優化系統效能

本文同步刊載於 ALPHA Camp Blog

「為什麼網頁這麼慢!」

相信每個人都有類似經驗:遇到熱門新聞、限量特價商品、演唱會搶票,當短時間內大量流量湧入,網頁的存取常常因此失敗或異常緩慢,使用者抱怨連連。這不是因為程式功能寫錯,而是因大量運算或大流量導致系統表現不佳所產生的問題,屬於非功能性需求,也就是「效能優化」的範疇。隨著接觸的專案規模越大,除了功能實作,效能也是重要的課題。

閱讀更多Memcached 實作示範 — 用Memory Cache優化系統效能

[Node.js] 安裝 NVM (Node Version Manager) 來切換 Node.js 版本 for Windows

NVM (Node Version Manager) 是 Node.js 的版本管理工具。Node.js 發展快速,迭代頻繁,很可能同時間在不同專案需要配置不同 Node.js 版本。因此會建議在安裝 Node.js 前先安裝 NVM,利用 NVM 幫助 Node.js 的版本控管和快速切換。

在 Windows 作業系統上的 NVM 是使用 coreybutler/nvm-windows,和 Unix-like 作業系統 (例如 Mac/Linux) 上的安裝方式不一樣,nvm 的指令也略有差異。

閱讀更多[Node.js] 安裝 NVM (Node Version Manager) 來切換 Node.js 版本 for Windows

[Node.js] 安裝 NVM (Node Version Manager) 來切換 Node.js 版本 for MacOS/CentOS/Ubuntu

NVM (Node Version Manager) 是 Node.js 的版本管理工具。Node.js 發展快速,迭代頻繁,很可能同時間在不同專案需要配置不同 Node.js 版本。因此會建議在安裝 Node.js 前先安裝 NVM,利用 NVM 幫助 Node.js 的版本控管和快速切換。

在 Unix-like 作業系統上的 NVM 都是使用 nvm-sh/nvm,因此安裝方式大同小異。

閱讀更多[Node.js] 安裝 NVM (Node Version Manager) 來切換 Node.js 版本 for MacOS/CentOS/Ubuntu