我有一個OLE COM對象,試圖寫一個包裝,我決定開始使用TDD爲它編寫的代碼,因爲我相信它會給我一個更好的方向與我試圖寫的東西。 COM對象具有這樣的接口:我會怎麼做TDD與COM OLE對象
Interface Mapinfo
Sub [Do](ByVal cmd As String)
Function Eval(ByVal cmd As String) As String
End Interface
的[待辦事項]命令將採取財產以後像下面
Mapinfo.Do("OpenTable("""C:\Temp\MyTable.TAB""")")
現在我試圖寫一個包裝所以有這樣的功能:現在
Mapinfo.OpenTable("C:\Temp\MyTable.TAB")
,我有我的主要問題是,每次我想要寫一個新的測試和一些代碼,我必須創建OLE對象的實例,等待應用程序啓動(30秒+ ),測試我的小函數,關閉並處理OLE對象,更改代碼並再次運行它。
我的問題是:有沒有更好的方法來做到這一切與具有每次啓動OLE應用程序呢?我聽說過模擬物體,但並沒有真正研究它,他們會幫助我嗎?如果是這樣如何?
編輯:現在我已經意識到我將不得不做出一個模擬對象的Mapinfo,我的問題是我怎麼做一個化妝模仿對象,可以採取不同的格式化字符串?這將如何幫助我驗證包裝器中的代碼是否正確?