If you want to use devices from multiple manufacturers, most people will point you in the direction of labview or matlab, but these are both commercial and not particularly cheap either.
Personally, I like to use python for ethernet or USB devices, for ethernet it is easy to set up, usb is a little more difficult. The only downside is that you have to read through the user manuals and get used to using scpi, but you can set up what ever test system you like without paying a penny.
Unfortunately, any decent software you will want to use will be expensive and you don't stand much chance of finding open source alternatives, so rolling your own is what's left.