I was hoping that someone may have some advice for my predicament. I'm fairly new to the QA game and I'm encountering a problem with our VB scan client application. The QA process consists of manual testing and no automated testing.
The nature of the problem is that once every 10 hours of usage, the application crashes and all data is lost. This crash can not be reproduced by executing the same sequence of events. It is seemingly random as far as I can tell in that the trigger is always different at least from a user perspective. The errors that are on screen are not descriptive enough to identify the root of the bug.
At this point, the application works great with the exception of the occasional crash which is almost impossible to replicate.
Does anyone have any ideas on where I can go from here? I really appreciate the help.
Since it seems to be random and the same sequence of events doesn't produce a crash twice, did you look to factors outside the application? What is going on on the same server when it crashes? What OS are you running? Are you running out of resources? Is it the same time of day every time it crashes?
Look for commonalities in the crashes and go from there.
A lot of times when I get into this scenario I go back to the development team and ask them to help me turn on greater logging options... so if the crash happens again at least there may be a log for it. If greater logging is not available, I then ask why not?
Seems like a logical progression to me? If you can't support the product within your own four walls (it is crashing right and you can't debug it) how are you ever going to be able to support it in the customer's hands? Get ready for a discussion with the developers and program manger. [img]images/icons/wink.gif[/img]
If this still doesn't work... I start watching my actions more closely. Did I really see what I thought I saw? Run a memory leak checking application. See if your user actions may be causing or exploiting a memory leak.
I've even gone so far as installing a keyboard spy on my machine to see which keystrokes and button pushes were done over the past 8 hours... anything to help me provide the developers more data.
As Darrel mentioned => these kind of problem are often caused by ...
- loosing memory
- loosing handles
- loosing User Objects
- loosing GDI Objects
You will find it out by opening the Task manager (Processes)
Not always, but often, if the according values are increasing => sooner or later you will have such problems (crashes)
I agree with Darrel on this one. Sometimes it so happens that out of a couple of servers one is bad. If the faulty one is turned off, such crashes disappear.
I ha faced a similar thing about 6 months back. An error that was like a 'UFO' [img]images/icons/tongue.gif[/img] until finally one day a nice Dev guy took pains to switch off one server and told me to test and so on and so forth until I hit the error. The culprit(server) was immidiately dealt with [img]images/icons/grin.gif[/img]
When i come across such things(which i have many times), I try to collect as much log as possible and give it to the deelopment team ( Everything is logged on the Defect tracker). With One of the developers on my side i try to follow the same sequence( and some variations if necessary) to see if it can be reproduced. In btw as others said, maximum logging is turned on to see if that can catch anything.
Since in your case as you say that you see it approx once in every 10 hrs, I would think it shouldnt take long to setup a system for the purpose and closely monitor it including keystrokes if necessary. Problem is only when the bug interval or frequency is unpredictable.
The intermittent crashes can occur at any given timeframe whether it be an hour after the application is launched or if it has been operated for hours on end. I don't believe this to be related to a timing issue or a memory leak. My apologies for previous wording- it happens about every 10 hours of usage regardless whether the application was just opened or has been running for some time.
It seems that our current error logging is not descriptive enough to identify the root cause unfortunately.
Any recommendations for improving error handling specifically for VB apps? Freeware would be ideal but any suggestions would be great.
I have installed eventcorder for tracking keystrokes but that hasn't been of much help thusfar because it locks up the system. Any recommendations on a stable keyboard spy?