Engage in a ‘Workflow Testing’ exercise for real bugs

With software getting larger and larger, the interaction between engineers who work on various parts of a software has been getting more challenging. While this is not really a big problem for development engineers, the ones who primarily write code, but its indeed a growing problem for ‘Test Engineers’, the ones who test a software and ensure that it does what its supposed to do for the end-user.

Let me take a couple of examples to explain this better. In first case, we would take the case of ‘MS Word’ which is a part of ‘MS Office’ family of products. In second case, we will take a much smaller product like ‘Adobe Reader’ (more popularly knows by its former name ‘Adobe Acrobat Reader’).

MS Word has tons of modules or components or ‘section of codes’ which would have their own small teams. These may be File IO (Open, Save, SaveAs), Fonts, Print, Tables, Mail Merge, Formatting, Bookmarking, Help and so on. Some of these could be common across products, e.g. Fonts handling, Help etc. Each of these small teams will have their own test engineers and most of them test ‘their’ piece within a certain ‘Entry and Exit’ ideal boundary condition. Its always assumed that the guy who is before this node in the value chain would behave well and the guy who is next in chain would also behave well. Thats a wishful thinking.

Lets take an example

Enter Text -> Save File -> Select Text -> bold the text -> Undo bold -> Save -> Close.

In this workflow (a logical sequence of actions performed for a task), lets take the case of the team which is testing ‘Undo and Redo’ function.

Continue reading

Do ‘Bug Hunts’ for those hidden bugs

Software Testing is still more in realm of ‘Arts’ than Science, especially when we are talking about testing software products, something like MS-Office or Mercury WinRunner. Unless you are a part of a highly evolved and organized form of testing, in other words, a defined set of test cases on a defined set of test-bed to be executed, you can safely assume that you wont be able to find all the bugs. Being paid to find bugs and still not able to find all is an oxymoron arrangement and as Test Engineers and Test Managers, we need to live in the reality (of not being able to find all bugs) and still do business (find all bugs).

In this post, I am going to talk about a exercise which lots of organizations are started to get into their test-process as an effective tool for finding bugs, which typically act elusive to the ‘Test Engineer’ who is looking at a specific area. This exercise is called by different names like Bug Hunt, Bug Bash, Focus Day, Bug Harvest and so on. We would refer it as ‘Bug Hunt’, just a personal preference, they all work same / similar.

What is a Bug Hunt ?

A Bug Hunt is an intense bug finding mission over a small period of time, from couple of hours to a day, done by people who are not testing that area or that product as normal day-to-day work or may not be ‘testers’ at all, allows all kinds of bugs (some bugs are feature-requests) to be reported and is done to sort of give one big shake to an area or a product before its being shipped.

Continue reading

Dont love your product too much, rather hate it

As software testers, we have to find faults in our own creations. Even though its lot of fun and a lot more sadistic pleasure to send a RED report every week to management on how buggy our own software is, we can’t be holding on to it till eternity. This is more of a problem for software managers like me then what I was few years back, a Test engineer. Somehow it never occurred to me as a Test Engineer that all my RED reports are actually not a good news to my manager and nor to company in general.

So as we like it or not, there is a time when there are very few bugs which deem a fix and we have to ship the product. Once a version is shipped, the whole game reverses. The same shortcomings which looked so much on the face are now ‘Known Issues’ or ‘Cosmetic’ and suddenly the average test engineer Mr. Joe starts to take full ownership, the same feature which he scoffed at since it was sort of developed by someone else is now something which he blessed. Any fault which gets reported later is looked at with suspicion and an explanation is tried then gladly logging them in the ‘Bug Reporting System’. Over time, the whole problem of maths-n-science and of finding logical bugs becomes a OB (Organizational Behavior) and psychology thing. What is now happening is that a tester has started to love his product too much and not able to see faults.

Continue reading