Closed frroossst closed 1 year ago
Our problem is that we can't really run the code that interfaces with the hardware on our machines without the actual hardware.
For example how would we go about, testing the acceleration sensor works correctly.
I would perform a resistance test to ensure all pins work on a given IC, perform a bench test on an apparatus where you can control the parameter in question (a drop test for the linear acceleration example, comparison test for most other sensors), and use a debugger probe to to test the code in situ.
Perhaps we can lay this test plan out tomorrow! And get onto laying out procedures on how to perform them and building apparatus to test our systems. I was looking at mainly software solutions like fuzz testing perhaps cause software is what I'm most familiar with.
Haven't looked into this a lot, but I'll try to get a proof of concept up and running by next week, we could using an additional micro-controller hijack the I2C lines and emulate the data received from the sensors, this would allow us to test a variety of scenarios really quickly and make fuzz testing fairly simple too.
https://docs.platformio.org/en/latest/advanced/unit-testing/index.html#unit-testing