iT邦幫忙

tdd相關文章
共有 122 則文章
鐵人賽 Software Development DAY 21

技術 TDD 實戰 D7:Laravel 會員登入與註冊

幾乎所有系統都需要會員機制,包含了 登入認證 與 權限管制,因此今天來做。 不得不說這個主題對於 Laravel 來說,實在是太簡單了,今天真是個混水摸魚的好日...

鐵人賽 IT技術 DAY 19
30天快速上手TDD 系列 第 19

技術 [Day 19]Refactoring - The End is the Beginning

從[Day 9]開始,一直到[Day 18],我們從最初不知道從哪開始重構,到現在程式碼變得高內聚、低耦合、可擴充、可讀、可維護,而且有了相關的測試保護,不再需...

鐵人賽 IT技術 DAY 15
30天快速上手TDD 系列 第 15

技術 [Day 15]Refactoring - 食神歸位

前兩篇文章,我們先以當下物件的角度,思考屬於自己的職責是什麼。而不屬於自己職責的部份,該委託給哪個物件來進行。並思考清楚當下物件所需要的,究竟是什麼,接著不必去...

鐵人賽 IT技術 DAY 18
30天快速上手TDD 系列 第 18

技術 [Day 18]Refactoring - Factory Pattern

上篇文章透過簡單的重構一個function,將相同的部份抽出判斷式外,讓不同的部份影響範圍最低。因此解決了我們有著重複程式碼的問題。 更重要的是,透過這一個過程...

鐵人賽 IT技術 DAY 29
30天快速上手TDD 系列 第 29

技術 [Day 29]TDD實戰練習-3

TDD實戰練習第一篇,介紹了: 如何從PO的描述中,定義出user story與acceptance test cases。 如何建立BDD相關的featur...

鐵人賽 Software Development DAY 12

技術 Mock 與 範例四 (Mockery, PHP)

每個程式都必定會去呼叫其他的函式,但我們在編寫測試時,也許有些函式不能隨意呼叫(e.g. 對外部送出 request),或者函式的執行時間較長(e.g. 存取檔...

鐵人賽 Modern Web DAY 21
從零開始認識 Node.js 系列 第 21

技術 [Day 21] 動手篇 - Please give me Mocha (1)

本文開始前 TDD 是一個觀念,實踐後成了常聽見的 Unit Testing 等,之前我寫過一篇以 Express 為例的教學文,也再公司內外分享過,因此這篇...

鐵人賽 Software Development DAY 14

技術 TDD 實戰 D1:Laravel 首頁

今天讓我們從簡單的開始,來修改網站的首頁。 題目 預計用 Laravel 完成一個留言板,會員能夠登入、發文、以及對其他人的文章留言。 要完成的細節則在...

鐵人賽 Software Development DAY 3

技術 TDD 的理由

看完上一篇的範例,是不是很簡單呢,一天馬上就學會了 TDD!什麼?你說這樣一個小小的 function,你10秒就寫完了?幹嘛還要用 TDD,結果講了10分鐘。...

鐵人賽 Software Development DAY 16

技術 TDD 實戰 D2:Laravel 資料庫 (1)

今天要來做一個新的頁面,是用來顯示使用者發過的所有文章,而文章會被記錄在資料庫內。 Post 路由 原本只有首頁的路由 /,所以要來寫一個新的 /posts/...

鐵人賽 Software Development DAY 11

技術 Git 版本控制 與 Commit

今天讓我們來談談關於 版本控制 充個天數。 Git 幾乎是現在軟體用來做版本控制的主流,而本篇當然還是因為跟 TDD 有關,至於 Git 的好處及如何使用,應該...

鐵人賽 Software Development DAY 13

技術 TDD 實戰:進入 Laravel

關於要怎麼進行 TDD 已經寫了十多篇文章介紹了,就讓我們進入實戰練習吧! 接下來數篇都會利用 TDD 來開發 Laravel 的專案,Laravel 是相當廣...

鐵人賽 Software Development DAY 20

技術 TDD 實戰 D6:Laravel POST 方法 與 表單

今天來新增一個,用 POST 方法來貼文的路由、以及讓使用者新增貼文的表單。 關於 如何使用範例程式碼,請參考 TDD 實戰 D1。 本篇版本包含:4g。...

鐵人賽 Mobile Development DAY 13

技術 [Day 13] TDD 測試驅動開發模式介紹

當我們把unit test一些基本概念弄清楚後,我們進入下一個章節TDD,TDD全名是Test Driven Development,也就是測試導向開發,在還沒...

技術 【如何高效開發 ? 】測試驅動開發 | 3 大法則 + 5 大好處

撰寫單元測試,速度更快 ! 大綱 除錯的日常 測試驅動開發 三大法則 五大好處 JUnit 示範 違反直覺的力量 除錯的日常 工程師的日常,是不斷的與程...

鐵人賽 Software Development DAY 24

技術 TDD 實戰 D10:Laravel (Regression Test)

上一篇做了一些更動,包含 貼文路由需驗證 及 Post 關聯到 User。 但不小心破壞到原本寫好的程式了,讓我們來看看是什麼問題。 關於 如何使用範例程式碼...

鐵人賽 Software Development DAY 2

技術 TDD 範例一:函式 (PHP)

來複習一下前一篇提到的 TDD 步驟: 寫測試: 在寫任何產品程式之前,只先編寫最少量、剛好能運作的自動化測試 寫程式: 編寫最少量、剛好能通過的產品程式...

鐵人賽 Software Development DAY 29

技術 BDD 行為驅動開發

TDD 幫助工程師的開發,但在軟體的生命週期中,不是只有工程師一個角色單打獨鬥。 一個軟體的成功有賴於整個團隊,內部可能包含了PM、QA 測試人員...等等,外...

鐵人賽 Software Development DAY 17

技術 TDD 實戰 D3:Laravel 資料庫 (2)

今天要來繼續修改昨天建置資料庫的部分,有太多需要人工處理的步驟,期望讓幾乎全部都能自動化。 關於 如何使用範例程式碼,請參考 TDD 實戰 D1。 本篇版本...

鐵人賽 Modern Web DAY 29
從零開始認識 Node.js 系列 第 29

技術 [Day 29] 動手篇 - Give me TEST AUTOMATION!

前言 今天使用 Github + Travis CI 本文開始 在 Project 根目錄新增 .travis.yml 檔案 開啟 .travis.yml...

技術 [破] 第三堂課:程式設計模式討論與思辯

今日的課程是由我們課程助教Tyson來主講。 重點針對於前端的架構設計解析。 首先,我們要問怎麼樣才是一個好的程式架構? 很多從junior工程師要進階到s...

鐵人賽 Software Development DAY 21
QA 三十天養成日記 系列 第 21

技術 [Day21] 軟體世界裡的 TDD/BDD/ATDD!懶人包幫你一次釐清(一)

BDD/TDD/ATDD 我相信在軟體業中並不陌生,但我一直都處於大致了解而已。今天就一次整理好筆記,區分好他們三者的關係 前幾篇文章中都有提到關於很多【測試】...

鐵人賽 Software Development DAY 22

技術 TDD 實戰 D8:Laravel UI 測試 (Dusk)

今天要來說說在 Laravel 中寫 UI 的測試。 我們目前已經有了登入、註冊、貼文的頁面,但是當時沒有遵循 TDD,現在補上應該還不算太晚! 關於 如何使...

鐵人賽 Software Development DAY 1

技術 為什麼想講 TDD

TDD ( Test-driven development ) 是一種寫程式的開發技巧,提倡能為開發者及程式帶來多項好處: 更好的程式結構 程式碼更簡潔...

鐵人賽 Software Development DAY 4

技術 TDD 範例二:物件 (PHP)

這個範例讓我們來看看怎麼用 TDD 來寫物件,不過我寫完程式之後才發現都沒看到什麼需要Refactor的地方,有點可惜沒有演示到這部分。 複習 TDD 步驟:...

鐵人賽 Software Development DAY 6

技術 TDD 範例三:用 PHPUnit 改寫範例二

來看看用測試框架 PHPUnit 改寫範例二,有什麼差別。 範例二的題目:一個可以計算多人薪水總和的程式。有一個Salary類別,代表一個人的名字與薪水,以及P...

鐵人賽 Software Development DAY 5

技術 測試框架 (PHPUnit)

我們可以利用 測試框架 來幫助我們編寫測試,減少重複的程式碼,以及豐富的 Assertion 函式可以在不同狀況下使用。 雖然常用程式語言的原生語法中,大概都有...

鐵人賽 Software Development DAY 7

技術 插入曲:關於 Interface 與 public / private

開始寫這個系列之後,討論到一個 TDD 使用時的議題,以及另一個相關的延伸問題,因此來聊聊我目前的看法。 1. TDD 與 定物件的介面 (Interface)...

鐵人賽 Modern Web DAY 22
從零開始認識 Node.js 系列 第 22

技術 [Day 22] 動手篇 - Please give me Mocha (2)

Koa 測試何如寫? 接續上一篇 [Day 21] 動手篇 - Please give me Mocha (1) ,基本需要的 Package 都安裝好。...

鐵人賽 Software Development DAY 21

技術 [Day21] 精通React測試驅動開發 ─ TDD & Jest

嗨 大家好 我是一路爬坡的阿肥 阿肥竟然撐過第三個禮拜了!真的太感動了嗚嗚希望可以撐到最後! 前言 今天阿肥又要講跟設計模式沒什麼直接相關的主題啦(被揍)。雖...