Sunday, October 17, 2010

Optimization through video recording

Last week I got request from my colleague to run one of his automation on particular time at night. He told me he could not access internet at that time because he would be traveling. He was suspecting some timing issue because of which automation was hanging. Automation sometimes run at 12'o clock midnight which was changing the date and causing automation to fail.

I had some context of that automation but not complete knowledge, so he came to me and asked me to start automation by telling me the steps which I need to run. I was busy in some other stuff and in no position to listen to his instructions; suddenly I gave him my test machine with recordMyDesktop (It is a video recording tool) running on it. I asked him to run whatever steps he wants me to perform and that will get captured in video. I told him I will see the video and perform exact steps. I recorded all the steps in video and saved it in my laptop.
At his requested time in night I started the  video and ran through same steps without making any mistake. After that exercise, I felt it is good way to optimize due to following reasons,
-Those  instructions were not important for me to remember so it would have been waste of time to put my effort on that.
-I could  have missed some of the important steps if I would not have recorded the video.

According to me, these types of information or commands which are difficult and unimportant  to remember can be noted or recorded down and can be used in future to save some good amount time .

Friday, October 1, 2010

Practicing SFDPO Test Heuristic

Testing Heuristics are set of guidelines which helps you to generate test ideas more effectively and systematically. There are many different Test Heuristics and you can get lot of information about Testing Heuristics from internet. In this post I will talk about my experiences with SFDPO heuristic.

SFDPO mnemonic which stands for
S- Structure,F-Function,D-Data,P-Platform,O-Operation."SFDPO" is often called as "San Francisco Depot" to just remember the heuristic. It implies that when you start developing test idea for any feature or product you should give thought to all these aspects(SFDPO) mentioned above. It will help you to develop test ideas in systematic way and you will have lesser escapes.

I always found it difficult to apply test heuristic or I use to apply them with my common sense and always felt that I can miss any aspect if I don't follow any systematic way. So I devised some way to  apply this heuristic for feature I was going to test. This way helped me during my initial practice and  with this I can generate more useful test ideas.

These are steps I followed
Get the information:- Gather whatever information you can get about the feature.
  -I went through design docs,prepared questions and checked them with concerned developers.
  -Studied the behavior of similar feature in other products.
  -Explored underlying technology used by the feature.

Prepare the draft:- After gathering information I went ahead and prepared a draft with it. Draft will contain
 -What I understood about the feature.
 -About its internals.
 -How it is implemented.
 -How users have used same feature in other products.

Now I have categories according to SFDPO heuristic. Once I got my draft up, I went through the draft and found the terms which should belong to particular category in Heuristic.
-Like "frontend connects to backend through api" will go under Structure.
-Data in system will be impacted during upgrade will go under Data.
-All actions performed by user in draft can go under functional aspect.

As I got few basic ideas about each aspect then  I started generating more ideas about every aspect.