I hope I am not repeating a question already answered, but I was unable to find something fitting my issue.
So, I have a self-made test framework, running approx. 300 automated tests for my program.
Every morning I want to check the status of the tests so I will know where to begin the day.
Sadly, the tests run 24 Hours on the fastest machine I can get my hands on.
So I split them. One half running on one machine, other half on another.
Now it takes 12 Hours, but two machines idling 12 hours every day.
Still, 12 Hours is too much. I only sleep 8, I want my results in the same time. I could go and split them again, but then I would have 4 machines idling all day just to have them finish their work in good time.
So, what to do with all those machines? I do have some ideas about that. For example, I do have older versions of the program which could be tested during the day. Not so important, but still nice to have and no idling.
What I need is a way to distribute my tests to a network of machines. The distribution system would have to check for idle machines (not idle like “CPU idle”, just not running any tests at the moment) and push tests from a queue to the machines in order of priority.
The tests do all their reporting themselves, I just need them to be spread out over the network.
I tried to solve this issue with STAF, but failed. Most other systems I looked up are focused on WRITING tests, which is fairly said not my problem, already got too much of those, but I am missing some easy to configure, platform independent distribution system.
There is my question: Does one of you have the “that sounds like a job for…” feeling? I would really appreciate any hints.