Friday, May 26, 2006
How to prepare before a war (bug hunt) ?
This is one good article ( according to me and my perspective) for young testers of how to proceed when you are on the verge of starting testing. This article could also be helpful to those who have to start testing on a new product and new technology.
Well, I have been mentioning the word *this* and I am pretty sure, you would want to have a local copy of it right.
You just need to right click and open How to prepare for a bug hunt? - article available in Stickyminds.
Thanks and Regards,
Pradeep Soundararajan
pradeep.srajan@gmail.com
Tuesday, May 23, 2006
How do you explain testing to your children ?
Many active children we have seen, ask a lot of questions and sometimes we are left in a state where we are unable to give an answer for a question. If your son/daugther is an active child then try explaining testing to them, they shall give you a new dimension of testing. If you don't have a child yet , don't try for one without marriage but ensure you are active to have an active offspring.
__ How do you explain testing to your children ? __
Child : Dad/Mom, what do you do at work ?
D/M : I Test products, my dear child.
Child : What is Testing ?
D/M : Well, Testing is playing with a product.
Child : So have I done Testing too ? Will I get a job in your company.
D/M : Partially true but you are not a tester.
Child : I play well , you can ask my friends !
D/M : Ha ha ! No my dear child, Testing is not about playing with a product alone. It is more than that.
Child : I am not understanding, can you explain it in simple words ?
D/M : Ok, Let me take an example... If I give you a toy robot , what will you do ?
Child : I shall play with it.
D/M : Ok, can you explain how you will play with it ?
Child : Well, I shall move the hands, legs , rotate the head , make the robot to fight against another toy....
D/M : Well, given a toy robot, I would do the same but I do it better than you.
Child : How can you play with the toy robot better than me ?
D/M : I shall plan "How to Play ?" , "Write a document of various ways I can play with it" , "Play with it" and "Note down what I see".
Child : Why should you do all that, it isn't that difficult to play with a toy robot.
D/M : Good ! Now say you and I play with two different toy robot and we both notice that when we try to rotate the head of the robot , the head part breaks from the body. What will you do ?
Child : I would cry , what would you do ?
D/M : I would take steps to ensure no more children cry.
Child : How can you do that, would you buy them a new one ?
D/M : Dear, you have started to learn Testing ... I would take another sample toy, rotate the head slowly, measure the point/angle at which the head breaks, call up the company and inform them my observation.
Child : Are you seriously playing with the toy ?
D/M : Yes, what you call as a "serious play", we elders call it "Testing".
Child : Wow ! Will I be a Tester if I do as what you do ?
D/M : Yes, 100% but do you want to become a Good Tester ?
Child : I want to become gooooooooooood tester.
D/M : Then you must start playing seriously with whatever you see, use or feel and have to read a lot of books, teach your friends, write your own articles...
Child : Except of reading books, I can do anything else.
D/M : No Dear, you need not real all books, James Bach , a Test Expert I know, writes about Testing in simple words. You can use his book/articles as a bible.
Child : Dad , We are Hindu's , why do we refer to bible ?
D/M : Bhagvad Gita, Quran or Bible all tell good things and we should not block ourselves in reading any of those.
Child : OK, Let me test the goodness in all those three books.
D/M : I am proud of you , hope you become a better Tester than your Dad/Mom.
Child : Can I have your cell phone for a moment ?
D/M : May I know why ?
Child : I want to call up Bill Gates ?
D/M : ???????
Child : Well yesterday I was playing a game on our PC and whenever I used to keep the mouse pressed for a while to keep shooting the PC rebooted.
D/M : Oh my God ! This guy/girl is testing my patience :(.
Regards,
Pradeep Soundararajan
pradeep.srajan@gmail.com
Disclaimer : The above post is my own imagination and it is an effort to talk about testing in a simpler fashion that I can potray and not to affect any person or his business. The law mentioned above is the law that is presently pevailing in Mars and does not hold for people planning to protest against the law in this Earth.
Tuesday, May 16, 2006
Prepaid bugs !
Prepaid bugs ? "Pradeep do people pay in advance to see a bug?"
Yes, indeed, you too have been a part of it, if you are from India. For other country chaps, alert your mobile service provider...
Did you get any clue ?
__ Prepaid bugs __
We had 2 hours break in a training that I was attending today and I got a chance to interact with a guy. Can there be a chance where I have not talked about testing to anyone ?
Hardly any...
I started off introducing myself and so did he and then we started talking about testing.
He had worked with Tata Teleservices earlier and I happened to ask him
"What was the worst phase of your career with Tata Teleservices?" and the story goes...
Sometime back the prepaid billing system which is deployed in iN ( Intelligent Network ) went for a toss for almost 3 days. This is a well reputed company and how could they have allowed such a thing to happen. You should be aware that there are certain things that goes beyond our control and so it did happen.
The team there started to diagonize the problem and after a day they found out that ... the few servers that interacted with a Avaya soft switch where not communicating with the soft switch as per the design.
As per his explanation the pre-paid billing servers communicate with the Avaya soft switch in a Time Division Multiplexing manner but they found that the Avaya soft switch was unable to take the load as all the servers were trying to ping the switch at the same time and that lead to the whole problem.
Now there are a few questions that had to be answered ...
1) How did this problem occur when it was running fine for a period of 1-2 years ?
Ans: Personnel from Tata Teleservices contacted the Avaya support team and their query being a priority one was routed to the France R&D team and then Avaya consulted their sub-contractors who also worked on the same product. Finally it was identified that it was a hardware failure which lead to mismatch of time slots to ping the switch.2) What is the solution ?
Ans: A new hardware had to be deployed replacing the faulty one.3) Why did it further take 2 days to get it fixed ?
Ans: The software/driver/hardware was not available in India at that point of time and someone was sent to Singapore , he then purchased and after his return they fixed it.
4) Wasn't there any back up , come on I don't believe this ? ( This was my question too )
Ans: Yes there was but it took a lot of time to move a customer info from one server to another and that itself would take a lot of time and in the mean time the problem can be fixed and also it would take more time to move from one iN to another and then retrieve it back.
Lessons learnt as a Tester -
I consider this a good learning for me and hence here is what my perception of it ...
1) Ideally Avaya should have got the hardware which failed at Tata Teleservice iN and should put that as a tool to be used for Load Testing for the soft switch they are working on.
2) With an organization outsourcing a job and the outsourced guy again outsourcing to someone and the chain goes on ... will lead to testing becoming more complex at the blackbox/system test level.
3) If it is a real-time or critical application that are installed on real-time networks, there is nothing wrong for a Tester to suggest the organization to buy back up hardware or also maintain a list of nearest Vendor/Retailer list for the products they may be in need.
4) For such a scenario, had the France Testing team asked to reproduce the issue, it would have been the toughest phase of their Testing career and my dear Testers, when you are unable to reproduce something after exhausting your tries, time to burn your hardware and then making a last try.
5) Hardware Testers should take such examples and do a research to find out ways to indicate a hardware failure. Of course there are LED displays for some systems but remember the above problem occured with something called intelligent Network.
6) Testers should ideally look around the world and that is the only way they can progress, you maybe doing some testing on some applications and the above incident may not be of any help to you but if you think you can learn a lot.
__ End of _ Prepaid Bug ! __
Friday, May 12, 2006
Where can you find the best testers of the world ?
This time it is going to be real serious post, no fun and no wild stuff but yet I am sure an inspiring and informative one.
The channel I watch to improve my testing skills are National Geographic and Discovery because it teaches a lot a testing through its Flight Crash Investigations. Whenever a flight crashes....
__ Where can you find the best testers of the world ? __
A Test Pilot is put to test !
Let me take an example of a flight crash which I felt interesting to talk about testing and then tell you why Flight Test Pilots are a cut above all of us doing so called Testing.
Aeroflot Russian International Airlines - Airbus A310-304 crashed on 23rd March 1994 which was heading from Moscow to Hongkong
You can read the story of crash here but let me explain to you after that how the investigation was/is done ( moreover , why you need to be a good tester if you want to be there investigating )
The Analysis -
- The Analysis starts with an organization like National Transportation Safety Board ( NTSB ) collecting each and every part of the plane debris and also listening and reading the data collected by the Flight Data Recorder ( Black Box ).
- Personnel from NTSB, in the above flight crash consulted a Test Pilot of Airbus to make a further analysis of why the Autopilot feature failed when a manual over-ride was forced on the so called most sophisticated On board computer auto pilot system.
- The Test Pilot and NTSB personnel listened to the audio conversations to find that the Pilot had taken his children to cockpit, let them to fly it for sometime while the auto pilot was still taking control of the plane, of course they were shocked but still why should it crash ?
What did that Test Pilot do ?
- He carefully noted down the Flight path, distance, speed, weather conditions, changes that the pilot did to the flight controls, auto pilot status, instrumentation details...
- He documented his observations and got it verified with NTSB personnel.
- He sat on an Airbus A310 simulator and did the same as the pilots from take off to 5 mins before the crash and also carefully did the same actions as the children on the plane's cockpit did.
What did he notice ?
- He noticed that when the child tried to over-ride the auto pilot system , the auto pilot failed and more importantly without an indication that it had failed.
- He also noticed that before the auto pilot cut off its control , there were some false trajectory projected on the pilot computer's display which further confused the pilot in the real time 2 mins before the crash actually happened.
What did this lead to ?
- This lead to some major design changes and an intensive Testing was taken up to ensure there are no more accidents since that crash killed all 75 on-board.
- This also lead the companies/certifying communities to release a plane only after testing it as completely as possible.
- This lead me to realize that the Test Pilots are the best Testers this world has.
What should you learn from this ? ( if at all you want to learn )
- Be it a flight crash or a system crash, investigate it properly.
- Take time from your manager if you want to dig out to find what exactly is the problem.
- Always try if there is a possibility of adding a data logger for the system you are working and be careful and ensure that atleast the Datalogger is tested properly. ( make it simple yet effective)
- Be sure what changes are needed after you notice a crash and wants to get it fixed.
Note : There was a comment in my previous post that "No customer would do wild things with the product when every company releases a user manual from Selva" , now Selva ... for the above incident , dont you think the wild test case would be "Giving the flight control to children and check what is happening in the simulator atleast" would be the most useful wild case ? Also when Taliban hit the Twin Towers with fast moving plane, didnt you see it as a good wild test case to test building strength ?
__ Where can you find the best testers of the world ? __
For the question "Where can you find the best testers of the world ?" the answer is ....Within you my dear readers...
... if you have a narrow vision, you cannot become a best tester whereas you can become one among the passenger who didn't survive. Ask yourself whether you want be inside a crashing plane our outside it , investigating the missing test case.
"Narrow minded mediocre testers, show you the broadest way to hell"
Regards,
Pradeep Soundararajan
Wednesday, May 10, 2006
Wild Wild Test !
Welcome to wildlife of Testing! Does it really exist?
Well in some interviews, a tester is tested to answer some wild questions but according to me those are really thought provoking. Whenever I am free I think of testing something with a wild touch. No, I am not trying to bring out a new testing concept “Wild Test” but just giving that name assuming it suits to what I have in mind.
__ Wild Wild Test __
Coffee Maker – One of my friends who went through Microsoft interview process in Bangalore was asked a question “Tell us one unique (wild) case that you will write to test a coffee maker.
Wild Test case for testing a Coffee Maker – Instead of pouring water for decoction, pour coffee itself and it would be interesting to watch what comes out and the test completes by tasting the outcome.
Pen – Some person had asked me about this after reading my Tester Tested in interview.
Wild Test case for testing a Pen – If fountain pen, fill it with blood and try writing a love letter. (Although this may look wild, one of my friend experimented it some years back and he said the pen didn’t write, although he didn’t get the girl, I got a test case from him and I am sure you must also have come across such love maniacs...)
Alternatively try catching some rodent near your house and try killing it with the pen you have in hand. Don’t you think this is a good wild test case? You should have by now noticed that many people have got hurt from pens since when someone strike you with a sharp pointed pen, it hurts a lot, you shall then agree that a pen is mightier than a sword.
Mosquito Repellent – This could be a futuristic interview question and it did look interesting one for me.
Wild Test case for testing a Mosquito Repellent –Leaving the mosquito repellent ON for a few days in a room where there are dead mosquitoes. Are you surprised why this test case is anyway valid?
This test case will ensure that a mosquito is repelled and its body is not burnt or affected by any means. (Too wild isn’t it? zzzzzzzzz)
Microwave Owen – Some truth is going to come out here…
Wild test case for testing Microwave Owen –Try putting in a pressure cooker, which contains rice, and water that needs to be cooked into the Microwave Owen. Are you surprised why I may be talking silly? You need not actually since when one of my seniors my previous company made a first trip to US, did this and trust me; today he is cognizant of all products.
Subjecting the Microwave Owen to an Ultra wave/sonic test while a Microwave is functioning.
Washing Machine – Out of my own personal experience…
Wild test case for testing Washing Machine –Put some coins in your shirt and trouser pockets and allow them for a gentle wash in your own washing machine. This will prove a design fault which is the 1 Rupee Indian coin blocks the water outlet and the whole washing machine should be dismantled sometimes to remove it and bring it to normal functionality. Trust me, I gifted the so-called best washing machine for my mom and I am talking about the same one.
Note – Most of the above are true and as a tester when I witnessed such outcomes and heard such outcomes from people using the product in a wild way added another dimension in the testing I do.
Now for some testing gyaan for you –
As a Tester of a product, always think there is a wild animal that is going to use the product you are testing and ensure to a certain extent that the wild animal is not affected physically by using it in its own way.
As a Tester try to imagine some out of the box scenarios that may or may not occur in the future and moreover think futuristic while writing test cases, its your lead or manager headache to remove the test case but you write it…
As a Tester learn and implement subjective testing, means – ask varied kind/class of people to use the product and see how and what for they use it, without telling them what the product is. (I too know what usability testing is, don’t confuse yourself, subjective testing is something different)
__ Wild Wild Test ! __
“The wildest Tester India should be proud of is Lalu Ji, he spits pan over every mic ”
Regards,
Pradeep Soundararajan
Disclaimer: This is my perception and my own views and does not reflect anyone’s but surely some points are inspired outcomes. You maybe having a more wilder test case for above products and I would appreciate if you could jot it down for your own progress.
Sunday, May 07, 2006
Manual Testing - no more a shit job !
Oops , I chose a very controversial topic of whether Manual Testing is a brainy job or a shit job and fortunately or unfortunately as you have started reading this stuff, I reccomend you to go through it completely. ( later think on it if possible )
Note : This post is targetted to 0-3 years of experience readers who still remain naive. Others, this maybe the one you wanted to speak out.
There is a misconception about Manual Testing and as a passionate Tester, here is my effort to make it clear. After reading this if you disagree with me , send me your CV, I shall look for an Automation Testing job for you.
__ Manual Testing no more a shit job ! __
Automation has its own merits and de-merits and so does Manual Testing but people are partially blind and look into De-merits alone. Isn't it a responsiblity of we people who have been into Manual Testing to show them "Its half glass full and not half glass empty alone".
Moreover, you cannot apply automation everywhere ... most of you must be dealing with software that runs on a PC or a similar platform but you should be aware that there are a zillion number of products we use in our daily lives which are not software and also don't run on a PC.
If you look at the sky from the well , you will be able to measure the diameter of sky, count the number of stars in the night and also see the shining sun for a few minutes in the 12 hours that it is available. Hope this post acts as a rope hanging in the well through which you shall climb and ..... ( don't look back at the well )
As I mentioned there are a zillion ( just a big number I cant think of ) products that cannot be automated and I am sure if you are testing something, despite a tool doing it, you are hired because it needs a manual effort. Loadrunner , Winrunner , QTP , Silk , Cotton , Wool .. whatever maybe, it still needs _____ ( fill your name , spelling mistakes are permitted )
What a tool cant do , which you can -
- A Tool can have limited intelligence and does execute and report whatever it is programmed to and I am sure the tool will have more limitations than you.
- A Tool is not worried about the product it is Testing but I am sure, you are, worried since you want to progress as a Tester.
- A Tool doesn't care about its appraisal but I am sure most of us do and we perform or outperform.
- A Tool put to work overnight gives you sleep but if it failed midway on a Thursday night, you miss your girlfriend the same weekend.
- A Tool is purchased and can be used illegaly too, can you be exploited illegaly ?
- A Tool is thrown away if a different project comes up and a new tool is purchased based on requirements, Are you thrown out because a project got over ?
Now for some more gyaan ...
Why is Manual Testing a brainy job ? ( You V/s Tool )
- Assume you are Manually Testing a product and parallely an automation framework is executing the same cases as yours , can you tell me who will report the most number of bugs ? can you also tell me who will be able to validate/investigate/reproduce/create new test cases after one cycle of testing. Is it going to be you or the tool. The tool may overtake you in finishing the test cases but tell your manager you are a tortoise and not hare.
- You know more about testing than the tool , isnt it true ? then who is a better tester , you or the tool ? Tool is identified by its release number and you by your skills. ( This point should ideally hit those testers who worship tools and ill-treat those who Manually Test )
- A tool can always replace a tester who just executes the test cases but can never replace those planning/documenting and analyzing test plan/design/cases.
- People obssesed about tools are the person with whom you should not be talking anything about testing, they are like people from the well and they seek for help to come out and in turn pull you inside.
- Tools are like aliens , they come in , influence you , evade you and rule you... When are you going to celebrate your Independence Day.
- Some decades before Robots and Automatic Machines replaced people at work but I am amazed to look at the software industry where such Automated tools make the company hire more people to work on it. :D cos the so called automated tools require more manual work. ( Some communist party is supporting these tools I guess )
- All Automation Testers are Manual Testers but all Manual Testers are not Automation Testers. ( pretty confusing , that's what I wanted )
- Say a demon came and told you "I will erase some part of your brain , which do you want to sacrifice - your knowledge about tools or your testing skill?" What would be your choice .. ( of course, the demon will not earase the memories of the girl/guy who rejected you )
Please be aware that I am not against any Automation Testers because I see that they too are Manual Testers but as a matter of fact they may not agree as their pride and ego doesn't permit them to admit. Tools are a vital part but you and your testing skills are more than vital to any project.
I give you two choices -
Choice 1 - No, I was not conviced
{ sorry for wasting your valuable automation testing time and reccomend you to waste 5 more mins looking at this }
Choice 2 - Yes, I was convinced.
{ you should then spend 5 more minutes reading this }
Regards,
Pradeep Soundararajan
pradeep.srajan@gmail.com
Disclaimer : [ Intentionally left partially blank to check who is still in the well ]