I think tests should be fun. It should be about feedback regarding where you are and how to get to where you want to be. It should be used in order to help EVERYONE get 100%. Tests should not be about categorisation, invalidation, nervousness and trauma. I know, a little heavy :-) So if you don't get 100% in all of the below then you are A BAD PROGRAMMER AND YOU WILL NOT BE MY FRIEND. Only joking :-)