前言 上一次我們測試的寫法,是先請 AI 幫我們大致產出來,修正測試項目,最後才做重構。發現這樣前前後後修改起來,也是蠻花時間的,而且需要花心思去額外比對,看測...
上一次我們只調整了一個測試,花上了不少時間,因為還在摸索如何調整。畢竟萬事起頭難,第一次總是最讓人勸退。 不過有了上次經驗之後,再調整第二個、第三個…,應該會快...
前言 AI 代工替我們寫的測試程式碼,已經涵蓋了目前完成的使用者故事的測試項目。分別是這兩項: 作為一個 [重度記帳軟體的使用者],我想要 [單手完成記帳操作...
談測試之前,我們必須先知道,撰寫可修改的程式碼實踐依賴於三項不同的技能: 必須瞭解物件導向設計了解如何設計良好的對象和類結構是至關重要的。合理的設計可以最小...
上一篇中詳細講解了 TDD,此篇將會重於 BDD/ATDD 的概念為主目的是希望有個 TDD 基底後,了解 BDD/ATDD 會更加順利 什麼是 BDD(B...
經過前面 29 天的介紹與手把手實際操作與解說,我相信大家應該都很能理解測試到底在做些什麼事情,今天我們稍微總結一下。 TDD 其實是一個測試流程的名稱,Tes...
前幾天介紹了 Cucumber,我想大家都對 Cucumber 有了認識,那今天我們要來在 Rails 裝上 Cucumber 以及其他相關測試套件。 Cucu...
昨天我們安裝了 Cucumber 套件,然後也把規格寫好後,run 一遍測試,出現了訊息告訴我們有幾個 scenario 與 step,因為我們還沒有在 ste...
前幾天帶大家了解了 BDD 的 Cucumber 以及 Gherkin,相信大家對 BDD 的特質已有所了解。今天我們來安裝 Cucumber 套件,並寫寫看...
今天我們來介紹跟 TDD 相近的 BDD,這裡指的相近絕對不是只差一個字的相近。在 TDD 情況下,工程師們彼此間的討論與溝通是沒有問題的,但非技術人員,像是...
組合技 Drone + godog + Mattermost 當有需求要在k8s上透過drone定期跑godog進行BDD測試,並將測試結果推送到matterm...
封裝 由於之後我打算將godog在CI/CD工具上定期跑BDD測試,所以我想要將godog封裝在image內,以下是我自己寫的dockerfile,提供各位參考...
godog 簡介 godog是Cucumber官方的Golang BDD(Behaviour-Driven Development)框架,它將規範和測試文件二合...
啟程 哈囉 各位Ithome的大家,今年的鐵人賽又見面拉~今年要來跟大家分享在當個純Dev後,因工作分配接下來當也要負責Ops,當中的轉變的經驗,還有在我職涯經...
TDD 幫助工程師的開發,但在軟體的生命週期中,不是只有工程師一個角色單打獨鬥。 一個軟體的成功有賴於整個團隊,內部可能包含了PM、QA 測試人員...等等,外...
BDD - 如何寫出好的 語法展示你的 Specification By Examples 使用實例化規格書的好處之一,就是可以讓開需求的人自己定義好後,讓開發...
針對整個系列,做個分類與整理。 補充一些筆者覺得不錯的參考資源,供讀者可以更深入的了解相關概念與技術。 這次鐵人賽,希望可以用30篇文章,來讓讀者了解TDD完整...
TDD實戰練習第一篇,介紹了: 如何從PO的描述中,定義出user story與acceptance test cases。 如何建立BDD相關的featur...
TDD實戰練習第一篇,介紹了: 如何從PO的描述中,定義出user story與acceptance test cases。 如何建立BDD相關的featur...
前面介紹完每一塊拼圖的概念之後,上一篇文章開始進入實戰演練。 實戰練習的範例,是透過一個網路銀行的範例專案,挑選了登入功能這個user story,在上一篇文章...
前幾篇文章提到了BDD的觀念,以及在.NET solution中,簡單的介紹了如何透過SpecFlow這個工具,來幫助我們減少在驗收測試案例與開始進行TDD中間...
前兩篇文章介紹到了,為什麼需要BDD來輔助我們進行TDD,原因是需求、user story與acceptance test cases都是透過DSL來描述,這離...
前面幾篇文章,先介紹了user story,ATDD,接著提到了要透過BDD來當作ATDD與TDD之間的橋樑。 這篇文章則是要介紹一下,筆者習慣用的BDD工具:...
前面先介紹了如何透過ATDD,透過user story來定義與管理使用者需求開始,透過驗收測試案例來定義一個user story什麼時候可以視為完成。 然而us...
這次讓我們進入安裝篇。 安裝有幾種方式。最通用的是Standalone的安裝方式,到https://github.com/pivotal/jasmine/dow...