我正在構建一些基礎設施來測試使用各種金融工具的一組定價引擎。我的問題是,我基本上有3層基礎設施,不知道在OOP時代組織這種基礎設施的最合適的方式是什麼。爲重複測試創建可重用的基礎架構 - 我錯過了哪些OOP概念?
解釋一下我目前的設計:
一個孤獨的TestClass
PricingEngineTests
方法
createStuff()
其中:- 初始化一些測試工具對象
A
,B
,C
。 ..,Z
- 這些測試對象作爲參數被傳遞以各種獨特的組合來初始化測試金融工具對象
1
,2
,...,50
- 初始化一些測試工具對象
獨立TestMethods對於每個相應的定價引擎,其中:
- 呼叫
createStuff()
- 使用測試工具的一些獨特的組合對象
A
到Z
一個次測試的金融工具1
到50
初始化特定的定價引擎 - 隨後對各自的定價引擎所創建的定價引擎的方法進行測試的對象的對象
- 呼叫
現在我的問題是每一個測試方法必須調用createStuff()
,這需要一些時間,所有的A
建立以Z
和1
到50
只給我們e每次創建的基礎架構的一小部分獨特子集。這顯然是我設計中的一個缺陷。
這個設計結構背後的邏輯是我可以獨立測試每個定價引擎,而不必在每個測試方法開始時重複大量的基礎結構創建代碼,通過取消createStuff()
。
我知道我的設計很差,但是我不知道如何解決它在面向對象的方式......我怎麼能更有效地建立這種基礎架構,讓我能夠獨立測試每個定價引擎?
我並不是很熟悉C#,並且知道它一定是這麼簡單的......這正是我所需要的。非常感謝。 – HavelTheGreat