In major embedded software projects, a good amount of people work on different modules, so the developing tasks are separated, and the testing task are executed divided. The developers learn about the result of the tests at a slow pace, so finding the trouble, and fixing could be a long time, which means more time and money, and the lower efficiency of the development.
To make an end of this problem, my challenge is to design an automated test environment for embedded software, which can give a fast feedback about the reliability of the finished modules. Thanks to that the developers will get feedback after the formation of the fault, and which step of the development causes the problem in the system, so it is easier, and faster to resolve the fault.
I determined the structure, the functions and tools during the execution of my duties. Then I made separated classes, which make the connection with the computer, and send messages to control the power supply and the relay matrix to perform a set of tasks.
After all sub-tasks, when all the elements of the desired testing environment were available, I made tests to test the operation. And finally I made the run-time test, that has been successful, based on the test results, and it suits the expected requirements.