私は、ロボットを構築する小さな楽しいプロジェクトに取り組んでいます。私たちプログラマーは、ロボットを構築する人々と並行して作業しています。そのため、変更されたソフトウェアを実行しようとしているときに、ビルダーがハードウェアを変更したというケースは非常によくあります。ソフトウェア テストが実行されていない場合、ソフトウェアまたはハードウェアに問題があるかどうかを判断するのは常に困難であり、統合に失敗した場合はさらに悪化します。この問題の自動テストには難しい部分があります。
物事を分解するいくつかの方法を考え出したので、ロボットがまだ動作していることをソフトウェアが保証することなく、ロボットにいくつかの動きをさせるための rc 制御があります。次に、ソフトウェアが以前と同じように動作することを示すために、ロボットをいくつかの定義された図形に移動させるいくつかのソフトウェア テストを開始します。しかし、これは常に非常に時間のかかる作業になります。自動化することはできず、誰かがテストを開始し、テストを監視して、ロボットがすべきことを実行したかどうかを判断しなければならないからです。
もう 1 つの問題は、実際のハードウェアで継続的にテストを行うと、ハードウェア、ジョイント、モーター、歯車などの部品が摩耗することです。
しかし、ハードウェアとソフトウェアの相互作用を扱っている他のプロジェクトでどのような手法が使用されているか、また使用できるツールがあるかどうかを知りたいと思うほど、テストはそれほど多くの問題を引き起こし、多くの時間を消費することが証明されていません。