Как смоделировать сбой последовательного порта? - PullRequest
0 голосов
/ 20 сентября 2011

Работая с библиотекой, которая взаимодействует с целым рядом USB-устройств, я хочу разработать набор тестов API для проверки состояния интеграции новых устройств. Одна из ситуаций, которую я хочу проверить, - это неожиданное удаление устройства. За исключением создания точек останова в тестовом скрипте, где устройство должно быть вручную отключено / повторно подключено, я хотел бы иметь возможность симулировать это поведение программно.

В настоящее время я имитирую это с помощью Devcon , но проблема, с которой я сталкиваюсь, заключается в том, что если API уже подключен к устройству через открытый последовательный порт, Devcon не может закрыть этот последовательный порт, и поэтому я не могу полностью симулировать удаление устройства, даже если удалены все проявления устройств в диспетчере устройств, кроме оставшегося COM-порта.

До сих пор мне не удалось найти решение в моих исследованиях, и я подумал, не сталкивался ли кто-нибудь с той же проблемой / не знает ли решение.

(язык c #, .Net2.0)

1 Ответ

3 голосов
/ 20 сентября 2011

это может быть не совсем ответ на ваш вопрос, но я бы сделал следующее: Преобразуйте каждый доступ к реальному оборудованию / устройствам в интерфейсы и внедрите их как зависимости в ваш код. Теперь вы можете макетировать эти интерфейсы и проводить модульное тестирование по своему усмотрению.

Чтобы сделать интеграцию / реальный тест реальной вещью и действительно отключить / подключить и т. Д. Трудный путь.

Это хорошо работает для меня и многих других, я думаю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...