.NET 4.x Unit тесты при использовании COM технологий - C#
Формулировка задачи:
Есть ли смысл в тестах при использовании методов, которые работают/взаимодействуют с другой программой?
К примеру, с Excel (провести тест корректной записи), Word (провести тест возвращающий колонтитулы), ЕщёКакойНибудьCOM (провести тест на возврат громадного массива)
Решение задачи: «.NET 4.x Unit тесты при использовании COM технологий»
textual
Листинг программы
//Простой интерфейс простого объекта public interface IWordDocumentWorker { void AddParagraph(); //Метод, который "оборачивает" обращение к COM-объекту } public class WordDocumentWorker : IWordDocumentWorker { public WordDocumentWorker() { //Здесь создаётся и настраивается COM-объект } void AddParagraph() { //Здесь происходит работа с COM } } public class WorkingCode { //Ссылка на наш "обёрнутый" COM-объект или на Fake, если речь о тестировании private IWordDocumentWorker docWorker; //Конструктор, в приложении будет вызываться как-то так: WorkingCode(new WordDocumentWorker()); //Но в тесте он может вызываться так: WorkingCode(A.Fake<IWordDocumentWorker>()); <- подсовывается Fake public WorkingCode(IWordDocumentWorker docWorker) { } ... docWorker.docWorker(); //Работаем как будто это настоящий COM-объект ... }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д