Я є членом клубу робототехніки моєї середньої школи і відповідаю за програмування робота. Одна з пропозицій, яку я постійно чую від різних дорослих, - це те, що я повинен писати одиничні тести, щоб допомогти перевірити свій код. База коду стає трохи великою, і я погоджуюся, що одиничні тести були б дуже корисними, щоб допомогти мені швидше ловити помилки.
Однак я не зовсім впевнений, як я міг це досягти. Наскільки мені відомо, одиничне тестування проводиться шляхом взяття функції (або підсистеми коду) і подачі набір вхідних даних, щоб переконатися, що вона виходить з однаковим результатом кожного разу. Код, який у мене зараз немає, не робить суттєвих оброблень даних, а навпаки, безпосередньо маніпулює апаратними компонентами робота. Більшість складностей полягає в тому, щоб переконатися, що електроніка справна, що код на даний момент відповідає фактичному апаратному забезпеченню робота і т. Д. Часто часом я можу бачити лише наявність проблеми, завантажуючи код на самого робота, і намагання запустити його.
Як розширення, як можна записати одиничні тести для коду, призначеного для роботи будь-якого механічного пристрою? Мені здається, ви можете вловлювати помилки лише фізично спостерігаючи за роботою машини.
Або я просто не розумію, як повинні працювати одиничні тести?
( Якщо це має значення, ось код , він написаний на C ++, і я беру участь у FRC )