最近在玩的 Visual Studio extension 叫做 Alive, 這是一套可以在 coding 過程中即時呈現 function 內每一個變數或 property 值的套件。
前提得是下面兩者其中一種,Alive 方能作用:
1. 得有測試案例
2. 得是 static funciton
這工具強大之處在於,它能很剛好的支援 TDD 的開發過程,以往我們只能透過「執行單元測試」+「debug」才能瞭解,在「這次新增加的 紅燈 test case 執行過程中」,該在哪邊新增一個 if/else 來岔出一個新的 scenario。
在有 Alive 之前,比較接近這功能的應該是 NCrunch 的 continuous testing。但 NCrunch 是即時執行測試程式,看得到 code coverage 跟執行的紅燈綠燈軌跡,並無法看到像在 debug 時,如同 OZcode 所呈現每一個值的情況。
Alive 才真的是在「TDD 的開發過程中,幫助開發」,因為你不需要執行測試,不需要偵錯,甚至不需要編譯、不需要存檔,它就能即時呈現在這個 test case 底下,你 coding 過程的所有變數、屬性的值以及執行路徑。
說再多,還不如直接看影片比較快。(如果你對 TDD 很熟了,只是想看 Alive 在 TDD 的巧妙之處,可以從 10m20s 開始看:https://www.youtube.com/watch?v=8wrVbxp3Ikc&t=10m20s)
另外,支援 for/foreach/while 迴圈中每一個 iterator 中各個變數的值,也支援遞迴唷。還有一個神奇的地方是,不只支援 public function, 也支援 private function 執行用測試案例打...private function 啟用 auto filter 時,也可以看到究竟有多少測試案例會使用到這個 private function。(強大到噁心,非常的噁心)
Alive 官網位置:https://comealive.io/
demo 影片位置:https://www.youtube.com/watch?v=8wrVbxp3Ikc&feature=youtu.be
#TDD #Alive
補充一下大家可能會想知道的幾點:
1. 這是要付費的 extension, 沒有試用版,目前版本還在 0.6.2,也就是還沒推出正式版
2. 從無到有開始TDD,Alive 執行速度極快,快到感覺比我存檔或編譯還快
3. 支援 mock framework (至少支援 NSub)
4. 目前支援 VS2013, VS2015, 個人測試經驗,VS2013極度不穩,VS2015 穩很多。
5. 拿我實務的大專案來使用時,當測試案例一多時,似乎 filter 會卡住,還在確認是那邊的問題。期望當正式版時,會更加穩定、迅速。
6. 尚未支援 specflow, 已排入待開發的feature中
有其他疑問的朋友,可以直接在底下留言。
同時也有557部Youtube影片,追蹤數超過4萬的網紅吳老師教學部落格,也在其Youtube影片中提到,Python基礎程式語言應用證照班第10次上課 01_重點回顧與證照508最大公因數 02_證照508最大公因數解答 03_證照510費氏數列題目說明 04_證照510費氏數列無函式解答 05_證照510費氏數列加上函式解答 06_證照602撲克牌總和解答一 07_證照602撲克牌總和解答二改用串...
遞迴while 在 吳老師教學部落格 Youtube 的最佳解答
Python基礎程式語言應用證照班第10次上課
01_重點回顧與證照508最大公因數
02_證照508最大公因數解答
03_證照510費氏數列題目說明
04_證照510費氏數列無函式解答
05_證照510費氏數列加上函式解答
06_證照602撲克牌總和解答一
07_證照602撲克牌總和解答二改用串列
08_證照604眾數建立串列與新增
09_證照604眾數用COUNT計算次數
完整教學
http://goo.gl/aQTMFS
吳老師教學論壇
http://www.tqc.idv.tw/
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/g/tcfst_python_2021_2
證照基礎程式語言 (Python 3)證照
Python 第1類:基本程式設計
技能內容:變數與常數、指定敘述、標準輸入輸出、運算式、算術運算子、數學函式的應用、格式化的輸出Python 第2類:選擇敘述
技能內容:if、if...else、if…elifPython 第3類:迴圈敘述
技能內容:while、for…inPython 第4類:進階控制流程
技能內容:常用的控制結構、條件判斷、迴圈Python 第5類:函式(Function)
技能內容:函式使用、傳遞參數、回傳資料、內建函式、區域變數與全域變數
上課用書:
Python 3.x 程式語言特訓教材(第二版)
作者: 蔡明志, 財團法人中華民國電腦技能基金會
出版社:全華
出版日期:2018/12/20
定價:490元
吳老師 110/9/14
EXCEL,VBA,Python,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
遞迴while 在 吳老師教學部落格 Youtube 的最佳解答
Python基礎程式語言應用證照班第10次上課
01_重點回顧與證照508最大公因數
02_證照508最大公因數解答
03_證照510費氏數列題目說明
04_證照510費氏數列無函式解答
05_證照510費氏數列加上函式解答
06_證照602撲克牌總和解答一
07_證照602撲克牌總和解答二改用串列
08_證照604眾數建立串列與新增
09_證照604眾數用COUNT計算次數
完整教學
http://goo.gl/aQTMFS
吳老師教學論壇
http://www.tqc.idv.tw/
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/g/tcfst_python_2021_2
證照基礎程式語言 (Python 3)證照
Python 第1類:基本程式設計
技能內容:變數與常數、指定敘述、標準輸入輸出、運算式、算術運算子、數學函式的應用、格式化的輸出Python 第2類:選擇敘述
技能內容:if、if...else、if…elifPython 第3類:迴圈敘述
技能內容:while、for…inPython 第4類:進階控制流程
技能內容:常用的控制結構、條件判斷、迴圈Python 第5類:函式(Function)
技能內容:函式使用、傳遞參數、回傳資料、內建函式、區域變數與全域變數
上課用書:
Python 3.x 程式語言特訓教材(第二版)
作者: 蔡明志, 財團法人中華民國電腦技能基金會
出版社:全華
出版日期:2018/12/20
定價:490元
吳老師 110/9/14
EXCEL,VBA,Python,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
遞迴while 在 吳老師教學部落格 Youtube 的最佳解答
Python基礎程式語言應用證照班第10次上課
01_重點回顧與證照508最大公因數
02_證照508最大公因數解答
03_證照510費氏數列題目說明
04_證照510費氏數列無函式解答
05_證照510費氏數列加上函式解答
06_證照602撲克牌總和解答一
07_證照602撲克牌總和解答二改用串列
08_證照604眾數建立串列與新增
09_證照604眾數用COUNT計算次數
完整教學
http://goo.gl/aQTMFS
吳老師教學論壇
http://www.tqc.idv.tw/
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/g/tcfst_python_2021_2
證照基礎程式語言 (Python 3)證照
Python 第1類:基本程式設計
技能內容:變數與常數、指定敘述、標準輸入輸出、運算式、算術運算子、數學函式的應用、格式化的輸出Python 第2類:選擇敘述
技能內容:if、if...else、if…elifPython 第3類:迴圈敘述
技能內容:while、for…inPython 第4類:進階控制流程
技能內容:常用的控制結構、條件判斷、迴圈Python 第5類:函式(Function)
技能內容:函式使用、傳遞參數、回傳資料、內建函式、區域變數與全域變數
上課用書:
Python 3.x 程式語言特訓教材(第二版)
作者: 蔡明志, 財團法人中華民國電腦技能基金會
出版社:全華
出版日期:2018/12/20
定價:490元
吳老師 110/9/14
EXCEL,VBA,Python,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境