I like memtest86 and badblocks -v -v -w (will wipe the disk) for hdd's under linux.
I'm not sure how you would test a power supply, other than putting it under load and checking for stable output with a multimeter.
And what components on a MB?
I'd run several "cat /dev/sda | gzip -f9 | gunzip -f9 > /dev/null" and "cat /dev/zero | gzip | gunzip > /dev/null" over and over for 2 days, and if the machine copes without kernel panic and without crc errors. I'd be happy with it.
But if you are looking for what component has failed in a machine, I've found smelling the different bits to be the best option.