My reasoning is that a potential employer can find out what they want abut me and my skills by looking at my employment history and by speaking to my referees. To invest several hours in a test that carries no guarantee of at least an interview is not an investment I want to make when I could be spending that time with my family, or working on other applications.
Another way of looking at it how I explained it to a recruiter who was annoyed that I wouldn't do his clients weekend coding test. I asked him if he would expect his client (off the shelf software house) to spend 5+ hours doing a coding exercises to prove their worth to a single potential customer - with no guarantee the potential customer would acknowledge their effort? After some hmmming and haaaaing he said no, he wouldn't. So I asked, why should I?