Gonzo QA II: Fear and loathing in the afternoon

Dateline: London, March 2007

Not much time to eat lunch today. When I got down to the canteen, three at the foosball table were looking for a fourth and I hate to disappoint. Twenty minutes later my partner and I have lost the tournament two games to one, but by Golly, we made them sweat. I climb the stairs back to the fourth floor thinking about the test plan I have been commissioned to write this afternoon; well, start to write this afternoon at any rate. Half a day for a test plan is always a bit optimistic; three days is more like it. Half a day is only usually long enough for a checklist. I wonder what Richard is doing sat at my desk and remember that I moved a few days ago. Finally back at my new desk on the third, I find a note on my wrist rest with “Call me” scribbled on it, no name, no number, no clue. I ask my group who put it there but they look at me blankly. Someone suggests a member of finance rumoured to own an invisibility cloak, but I find this unlikely. He last left his office in 1998 and all the evidence suggests he hasn’t left it since. I bin the note and then take it out of the regular bin and put it in the recycling bin. Hey, I have a conscience, you know.

I open up Windows Explorer and access the network drive where all the client project folders have been filed since time immemorial. Odd – the client I am looking for does not have a folder. Vaguely remembering something about this, I rummage around in my Outlook inbox and find an email from support saying that we have run out of space on \\clients, so all new files will be created on \\newclients regardless of whether the client is new or not until future notice. Accessing the new network drive I find a project folder for my client and a sub-folder in it for the project I am going to work on. I open it up and find four further sub-folders: “final”, “final 2”, “final final” and “old”. Note to self: recirculate the folder naming standards, especially those concerning manual version control. Thinking that I can at least ignore “old”, I search the other three folders looking for the latest versions of the documents I need to write a test plan, namely the project scope, business requirements, functional specification, use cases, browser matrix and one or two other documents if the project warrants it. I find nothing of the sort but I do find a bookmark to the project home page on the new company wiki, Confluence. Accessing the wiki I find what I need attached to a page with a typo. I immediately correct the typo feeling pleased with myself. For a wiki to flourish, we all have to do our bit.

As I reread the project scope, my part in its creation comes back to me. I remember having to estimate how long I would require to write and execute the test plan for an essentially flat web site powered by Ektron, a content management system. I will also need to conduct one round of user training prior to hand-over. I am not sure that combining quality assurance and training works for every agency, but it certainly works for us. Unfortunately, the finished business requirements document at 100 pages is twice as long as I expected and the same goes for the 200 page functional specification. This translates into either more job satisfaction for me and my team or a great big time and money crunch coming right at me. I make a note to have a word with the project manager. I notice that the browser matrix was written around Easter 2006 and contains no commitment to test the site on either Firefox 2, Microsoft Internet Explorer 7 or Windows Vista. I think we can live without testing on Vista for another few months but Firefox 2 and IE 7 are here and now and usage is climbing. I make a note to ask the project manager to raise a change request. We will probably need to check the password reminder email is readable in Outlook 2007 too. Realising as I write it that this task is easy to describe, I add it to Jira, our new issue management system. We got it when we bought the new wiki software in some kind of two-for-one deal at Morrisons. Actually, I don’t know how we got it, but Jira is a heck of a lot more powerful than UltraApps, our poor old issue manager – and there’s the rub; it’s also a lot more complex to operate. Still, it’s early days and we have already had much success with it. I dispel the cloud of untapped Jira potential gathering over my head and read on, losing myself in the, I must say, rather well written project documentation. I make a note to congratulate the project Information Architect next time I see her; this doesn’t seem like something I should put in Jira though.

I am a big fan of separating development, staging and live environments. I think developers should have the freedom to do whatever they want in the development environment, safe in the knowledge that they can do no harm to anyone except themselves and each other. The staging environment is where it all comes together and should be as close a copy of the live environment as possible. The live environment should be sacrosanct, heavily protected and fiercely guarded. Unfortunately, many content management system (CMS) implementations tend not to play by these rules. Not all clients aspire to an academically-satisfying fully staffed author, editor, publisher model and all the roles end up delegated to a lady called Jo who works three days a week, who has too much to do and who does it straight onto live.

I am mulling over the ways we can prevent omnipotent CMS users from publishing stuff live just to see what it looks like. I’m thinking education, I’m thinking preview functions, I’m thinking thumb-screws, when I become aware of someone hovering just on the edge of my field of vision. That will be Mr. Call Me, then and I’m still thinking thumb-screws.

Call Me explains that he has a five or six (he’s not sure) -page micro-site that really needs to go live this afternoon because the online media promotion starts tomorrow at 9 a.m. and it is too late to stop it. He asks me to take a quick look at the site, saying it is in English and Russian and each version shouldn’t take me more than five minutes to approve. It occurs to me to ask him whether anyone has checked the online media banners. He says no and adds it to my verbal brief. After a very short, very intense discussion it turns out that the project has no scope, no budget, no job code and isn’t scheduled via the resourcing system. It also turns out that despite this, Call Me has somehow got it built and promised the client we would deliver it last Friday so it is in fact all on staging and late. This is wrong on so many levels that it is difficult to know where to begin. However, needs must when the devil drives, so I park the CMS test plan task and pick up this one instead. I make a note to talk to Call Me about his project management skills during the evaluation phase of this project (should there be one – ha!) and prepare for a bout of what I call exploratory testing when the muse is with me and ad hoc testing should she be otherwise engaged.

I start by visiting the home page of the English site on the staging server using MS-IE 6. What joy! I am looking at a competition site which means there will be a form on it somewhere and a database back-end that needs checking too. While I manually browse the site, I run a bunch of automated tools over it in the background including XENU link-checker, CSE HTML Validator and Watchfire WebQA (R.I.P.). Cheap as chips XENU finishes first, ah bless, and the report is not only red but much longer than you would expect for a five or six page site. The HTML validator spits out its usual super-wordy report and a quick glance tells me there’s a lot of red in there as well. As the mighty Watchfire weighs in with its final, damning verdict, I reach for the phone and make two calls. I call Call Me to postpone tomorrow’s online media promotion because this won’t be going live tonight and I call home to say I will be late.

First posted in: The Tester, March 2007, page 14.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s