У меня есть приложение WinForm, которое является целью для файлов и папок. Я хотел бы использовать закодированный пользовательский интерфейс, чтобы иметь автоматизированные тесты, которые проверяют, что приложение делает то, что, по моему мнению, оно должно делать, когда на него были переброшены файлы.
Я использовал средство записи закодированного пользовательского интерфейса для записи этой операции, но мне нужно обобщить ее и заставить работать на сервере CI. Поэтому я в основном хочу запустить тест с некоторыми предварительно настроенными путями к файлам (файлы могут быть созданы как часть настройки теста), а затем просто вызвать событие удаления, передавая пути к этим файлам в файловой системе.
Закодированный пользовательский интерфейс записывает тест, но создает такой тест:
WinListItem uIContactcshtmlListItem = this.UIProgramManagerWindow.UIDesktopList.UIContactcshtmlListItem;
WinText uIDragDropFilesHereText = this.UIMyApp.UIDragDropFilesHereWindow.UIDragDropFilesHereText;
uIDragDropFilesHereText.EnsureClickable(new Point(84, 13));
Mouse.StartDragging(uIContactcshtmlListItem, new Point(17, 35));
Mouse.StopDragging(uIDragDropFilesHereText, new Point(84, 13));
«uIContactcshtmlListItem», по-видимому, представляет исходные файлы, которые я удалил. (Файл contact.cs оказался одной из вещей, которые я перетаскивал во время записи.) Я хочу заменить его только некоторыми путями к файлам, но, по сути, это элемент управления типа списка из проводника.
Есть ли способ выполнить то, что я хочу? Возможно, создав WinListItem в коде вручную?