測試預期結果

本頁介紹我們對 Dynamo 新增程式碼進行測試時所預期的結果。

現在,您已經有一個想要增加的新節點。真棒。現在該來做一些測試。這樣做有兩個原因。

  1. 測試有助於找出沒有作用的地方

  2. 當某人變更了內容而弄壞節點時,應該也會讓測試失效。如此一來,讓測試失效的人就必須去修復它。如果這樣沒有讓測試失效,就表示主要是您要處理模型被破壞的使用者。

Dynamo 中的測試分為兩大類:單元測試、系統測試。

單元測試

盡可能不要進行單元測試。如果您建立了一個透過 C# zero touch 節點計算平方根的節點,則最好只測試該 DLL,並且讓 C# 直接呼叫該程式碼。單元測試甚至不該包含 Dynamo。

應該包含:

  • 正面測試 (做正確的事情)

  • 負面測試 (即使給定不當輸入也不會出現不當結果)

  • 迴歸測試 (有人在您的程式碼中發現錯誤時,請撰寫一個測試確保它不會重複發生)

測試應該小巧、快速、可靠。大多數測試應該是單元測試。

系統測試

系統測試會在多個元件上運作,測試它們如何一起配合。這類測試應謹慎使用和設計。

為什麼?這類測試的執行成本很高。讓測試套件以越少延遲執行越好。

在撰寫系統測試時,首先要做的是查看圖表,找出您要涵蓋的子系統。

理想情況下會有一系列的漸進式測試,涵蓋越來越多的互動區塊,當測試開始失敗時,就可以很快找出問題所在。

需要系統測試的事項範例:

  • 一種新類型的 Revit 節點,它會在追蹤中儲存多個元素,而非單一元素

  • 以不同方式顯示資料的新 Watch 節點

不需要系統測試的事項範例:

  • 新的數學節點

  • 字串處理資源庫

系統測試應:

  • 堅持正確的行為

  • 堅持沒有病態行為,例如沒有例外狀況

Last updated