Хотите ли вы протестировать драйвер для FPGA, или вы хотите протестировать протокол? Потому что, если вы хотите протестировать оба, это уже будет выглядеть как (системный) интеграционный тест для меня.
Да, можно протестировать библиотеку связи в изоляции. Убедитесь, что ваш протокол связи не слишком переплетается с драйвером устройства; таким образом вы можете протестировать его изолированно.
Мое предложение:
- модульного тестирования мелких деталей; проверить их thoreoughly
- проверить, что вы хотите от интеграционного теста; много данных или стресс-тест? сделать его ортогональным к испытанию
- если вы макет аппаратного блока, сделать это очень просто
Вида ошибки, которые я был бы заинтересован в том, когда тестировании библиотеки FPGA + связь:
- обрабатывает протокол в соответствии со спецификациями?
- как он ведет себя при переполнении буфера/потоке?
- Работа с прерываниями работает должным образом?
- правильно ли он обрабатывает все сигналы rsx22 (разрывы, четность, стоповые бит)?
Что касается симуляции: у меня был очень хороший код результата в Matlab/Simulink (т. Е. С использованием TrueTime, свободного плагина). Затем Simulink можно использовать для подключения к любому оборудованию в цикле (HIL) или модели в цикле. В качестве альтернативы можно использовать программный макет (но часто сложно моделировать асинхронные события, которые интересны, если вы близки к аппаратным средствам, то есть обработчики прерываний)
Как вы указали, в этом случае проблема заключается в что, возможно, единичный тест потребует больших усилий ... – yeyeyerman
Не уверен, что это ** отличное усилие, начиная с насмешливой библиотеки.Если альтернативой является ** нет ** тестирование, то нам нужно сделать работу. Возможно, вы можете сделать простой материал против реального протокола, но для крайних случаев, вероятно, потребуется какой-то эмулятор. – djna
Да, я согласен с тобой, потому что вижу, что это насмешливое тестирование или нет. И, будучи частью сложной системы, я предпочитаю изоляцию возможных ошибок как можно больше. – yeyeyerman