Updates test framework to check for config and give a better error message

Also, don't run a protocol if not configured (and specially don't
return error code for it)