本頁介紹我們對 Dynamo 新增程式碼進行測試時所預期的結果。
現在,您已經有一個想要增加的新節點。真棒。現在該來做一些測試。這樣做有兩個原因。
測試有助於找出沒有作用的地方
當某人變更了內容而弄壞節點時,應該也會讓測試失效。如此一來,讓測試失效的人就必須去修復它。如果這樣沒有讓測試失效,就表示主要是您要處理模型被破壞的使用者。
Dynamo 中的測試分為兩大類:單元測試、系統測試。
盡可能不要進行單元測試。如果您建立了一個透過 C# zero touch 節點計算平方根的節點,則最好只測試該 DLL,並且讓 C# 直接呼叫該程式碼。單元測試甚至不該包含 Dynamo。
應該包含:
正面測試 (做正確的事情)
負面測試 (即使給定不當輸入也不會出現不當結果)
迴歸測試 (有人在您的程式碼中發現錯誤時,請撰寫一個測試確保它不會重複發生)
測試應該小巧、快速、可靠。大多數測試應該是單元測試。
系統測試會在多個元件上運作,測試它們如何一起配合。這類測試應謹慎使用和設計。
為什麼?這類測試的執行成本很高。讓測試套件以越少延遲執行越好。
在撰寫系統測試時,首先要做的是查看此圖表,找出您要涵蓋的子系統。
理想情況下會有一系列的漸進式測試,涵蓋越來越多的互動區塊,當測試開始失敗時,就可以很快找出問題所在。
需要系統測試的事項範例:
一種新類型的 Revit 節點,它會在追蹤中儲存多個元素,而非單一元素
以不同方式顯示資料的新 Watch 節點
不需要系統測試的事項範例:
新的數學節點
字串處理資源庫
系統測試應:
堅持正確的行為
堅持沒有病態行為,例如沒有例外狀況