Sh*t my QA says

There is a bug, I just haven’t found it yet.
Well, it’s broken on my machine!
In the Danish version of Windows, if you click really fast, the app just crashes.
It doesn’t work when I put Cyrillic text in. Or Greek, Hebrew, or Mandarin.
One copy of “War and Peace” in the description field was OK, but the second crashed it.
What if you rotate the screen/turn on airplane mode/get a text/drop the phone into the toilet from ten feet up?
The app doesn’t handle itself well if you delete its database after you log in.
Ooh, I haven’t seen it do that before! Wonder if it’ll do it again?
Can’t stop, I saw a bug and I’m trying to find it again.

(From a QA friend) There you are, you little sh*t! I have you now!

Words to a new software QA

We’re not after the developers. We’re after their code. It’s not personal.

If they didn’t want us to find the bug, they shouldn’t have written it in the first place.

QA starts with the requirements, if those are vague, the result will not be what the customer wants.

Not finding a bug does not prove there are no bugs. It proves you didn’t find one right there, at that particular planetary alignment with that precise set of system and environment and time of day and test data.

There is always a bug somewhere.

Learn how to program in the language your developers use. Also learn SQL (Structured Query Language), HTML, CSS, and any other acronyms you hear often.

Your developers are an amazing resource and are usually very helpful when presented with a "Can you please help me…" request.

Keep learning. There is always a new language, or tool, or technique, or platform, or environment, or program.

Get up and walk around often. Drinking large amounts of water will help this. Give your eyes a rest from the screen and go talk to your team.

From QA to Dev

Dear programmers, a few notes from your QA team lead:

We don’t actually hate you.
Not by default, and not at first. It takes time and effort on your part to earn the ire of the QA team. But if you tangle with one of us, you tangle with all of us. We talk about you. We trade horror stories about that one bug that took weeks to fix because you stalled every step of the way. Yep, we remember that one well. You can redeem yourself, but it’s not easy.

We want the same thing.
We want the best possible product to go out of the door and our job is to make you look good, rock star good. Sometimes, you get in the way of that.

Sloppiness annoys the snot out of us.
Like that zip code field in the database that only accepts ten characters, but we can enter 255 in the app? That’s something you should have thought of before you checked in the code. Spell check is your friend when you’re doing UI stuff. Think before you type.

You and I think alike, but we’re different.
You build it, we break it. Good QA people can program in your language, so we understand what you’re talking about, and we mipght have a suggestion as to how it could be done differently, or something you missed. Try bouncing ideas off us once in a while. Also, we may have an idea of what you’re actually doing, so lay off the BS about how hard it is.

We are extremely picky because we’re paid to be picky.
It’s not personal, it’s just how we are. Details are important and we care about all of them. Even the annoying ones. We also like the pictures to hang straight on the walls, and shoelaces to be tied neatly.

We don’t expect you to be perfect.
If you were perfect, we’d be out of a job. We know you’re not perfect, and neither are we. What we’d like is for you to accept that you’re capable of making mistakes and missing details, and stop acting like we’re out to get you. Trust me, if we were out to get you, we’d be waiting in the parking lot with pitchforks (we keep them in the server room, just in case).

We’re not perfect either.
Guess what? We make mistakes too! It’s OK to tell us when you think we’re wrong, but please don’t be a jerk about it. It’s not a contest.

Just fix the darned bug already.
We don’t care about whose fault it is, or how hard it was to fix, or how Joe Coder did such sloppy work you have to refactor all his stuff to fix it (believe me, we already know all about Joe Coder). We just want the bug fixed so we can re-test it and get it out the door and we have no patience for whining.

Never, EVER break the build we’re working in.
Please make absolutely sure the app will both compile and run before AND after you check your stuff in. If you break the build we’re WORKING IN, we’re dead in the water till you fix it. We’ll come and sit in your cube and stare at you until it’s fixed and we can go back to work.

Test it before you send it to us.
If we can’t even get through the happy path, then dude, what were you thinking when you checked the code in? (See “Sloppiness annoys the snot out of us”)

If you don’t understand us, talk to us.
Sometimes we don’t communicate all that well. Some things just make more sense face to face. Come talk to us, we rarely bite programmers.

See you at the release party!

Love, your QA team.

(Yes, I really am a QA team lead.)