I've also talked to people with terrible resumes who turn out to be great. They are just bad at resumes.
Some people also under-rate their skills, because they are very demanding to themselves (the bad ones don't know "sort" and want to re-implement their own sorting method in Python).
I pre-screen using practical problems that I have to solve every day, and when candidates know their UNIX shell commands that's usually a really good sign.
By "probably solid" I don't mean "immediate hire" but rather "It's a safe bet this person isn't utterly incompetent and I won't be wasting 10 minutes of my time talking to them."
If they failed your test -- you just know they failed your test. That doesn't mean you now that they're incompetent.