У меня есть объект OLE COM, для которого я пытаюсь написать оболочку, я решил начать использовать TDD для написания кода для него, так как считаю, что это даст мне лучшее представление о том, что я пробую написать. COM-объект имеет такой интерфейс:
Interface Mapinfo
Sub [Do](ByVal cmd As String)
Function Eval(ByVal cmd As String) As String
End Interface
Команда [Do] будет выглядеть примерно так:
Mapinfo.Do("OpenTable("""C:\Temp\MyTable.TAB""")")
Теперь я пытаюсь написать оболочку, поэтому есть такая функция:
Mapinfo.OpenTable("C:\Temp\MyTable.TAB")
Теперь моя основная проблема, с которой я сталкиваюсь, заключается в том, что каждый раз, когда я хочу написать новый тест и какой-то код, мне нужно создать экземпляр объекта OLE, подождать, пока приложение запустится (30 секунд +), test Моя маленькая функция, закройте и утилизируйте объект OLE, измените код и снова запустите его.
Мой вопрос: есть ли лучший способ сделать все это без необходимости каждый раз запускать приложение OLE? Я слышал о фальшивых предметах, но не особо разбирался в них, помогут ли они мне здесь? Если да, то как?
РЕДАКТИРОВАТЬ: Теперь я понял, что мне придется сделать фиктивный объект для Mapinfo, мой вопрос: как мне сделать макет объекта, который может принимать различные форматированные строки? Как это поможет мне проверить правильность кода в моей оболочке?