Sunday, November 23, 2008

Make a difference. Feel the Difference.

As usual at the day end, began to keep my steps towards home. Got into the BMTC bus and I was happy that, I got a place to travel by standing. As terminals arrived, passengers came in and went out of the bus. In this coming in and going out, I got a place to stand beside a window of the bus. Looking outside the window of traveling bus, an advertisement board caught my attention and that was an evident, to which I was talking to one of my tester friend on that evening over the phone.

Yet again, I saw the same advertising in the other place on the other day. I got down from the bus that rainy night and headed to the place where the advertisement board was displayed. It was so close to my testing practices, that we (3 testers in our team) did at my work place that bought a huge differences.



















A salute to those traffic police staff who serves the society by standing in the hot days, during rainy hours and in breezing chill & cold winds for maintaining the calm traffic. Testing Garage thanks the Bengaluru City Traffic Police department for putting up such thought provoking advertisement.

The advertisement board displayed a mission with the help of ants. As we all know ants follow a disciplined line, thought not very linear, but still they move ahead in disciplined steps after accomplishing their task(s), for reaching their sweet little nests or to the destination they are marching at.

I am not a expert tester or experienced tester since still I am learning to do *mistakes. But I am a young budding confident learning tester who is practicing testing by learning from the mistakes I do every moment and from other testers' testing experiences. I was into a testing project, for testing the giant secure product, which was a huge one with several modules. That product thought me how to test anything given, at anytime, at any place. I assure that product is safe to use, but it is **not free from bugs.

* Mistakes that I do, are teaching lessons for me; but sure I will not be satisfied enough forever, with the mistakes I do.
** It is not that I am saying the product is not good enough to use since it has bugs in it; instead I am saying it is a very safe and efficient product with the known bugs & unknown bugs (if explored much more, it shows much more interesting bugs which are residing in it). Testing shows bugs/defects/need of quality (respect to the user of the product) always!


And, that was my first test project. The very first bug report, I submitted in my testing career was a Duplicate. I started to test and report after 10 days when I got my first job. Testing procedures were new to me, since I did not know what for those manually scripted test procedures were. I had bunches (700+ sheets) of manually scripted test procedures (1500+) which was supposed to be executed, and document the results. As I kept executing those manually scripted test procedures, the product did not show the behavior that were against, for those manually scripted test procedures expected result. The product had become immune enough to those tests of manual scripted procedures.

I went back to my lead (She was my first test lead, who always gave a smile when any one goes to her cubicle with the extended testing help) for whom I was reporting to.

Lead: (with smile on her face) Good Morning! How is your testing going on?
Me: Good Morning! I am not finding any of those scripted procedure to be working.
Lead: (with surprise) Are those manually scripted test procedures are not meeting the expected results? (she wanted to know what I was telling her i.e., whether the against behavior are observed or as per the expected result.).
Me: No, .....those are meeting the expected results and I am unable to mark them as Fail.
Lead: Don't just stick on to those manually scripted test procedures only. Think and test apart from what those manually scripted procedure papers tell.

That was the word, which took me to new world of testing i.e., Exploratory Testing. I came to know a year back that I was practicing an exploratory testing with context driven testing approach. Though exploratory testing is as old as me today (which was coined by Cem Kaner around 1982 as per my knowledge), I came to know it when I was 25 years old.

This exploratory testing introduced many more test cases into the testware of my test project which made the expected results column to fill with 'FAIL'; but, many context/scenario were not documented at all since the time factor was crucial and I agree it was my fault too for not documenting them. They all reside in the database of bug tracker as a convincing bug reports for which the user of a product needs fixes and quite huge number of bugs have rested in peace with the fixes.

This approach made me to concentrate on doing exploratory testing all most, most of the time and giving a bit ample of time to execute the manually written test procedures. As time kept walking, I got an opportunity to work with one more test lead. She taught me what the Priority means, in a testing project. She sat beside me several days discussing (teaching) the testing ideas, the process what the test team needs to follow for amending the convincing Test Report formally at end of the product release. With her guidance I started to learn how to prioritize stuffs and this bought me an idea of a MISSION in a test project. Still learning day by day in prioritizing the activities.

She said, "Prioritize your tasks first before doing the stuffs". I started to prioritize for keeping up the Testing Mission of the test project, wherever I do my testing practice; then I planned my testing activities with priorities. Meanwhile during the end of each day and on reaching the plotted milestones, I keep evaluating always progress of testing activity being done in due course with a Testing Mission in mind.

There after, I kept practicing my testing with exploratory testing by context driven approach along with executing the manual test procedures and automating a bit. And, the test team of us too followed this approach. We had a huge difference which was very positive, that unrevealed the most of the hidden bugs, disguised bugs, potential features needed by customers in all the areas of the product. It was like a "Made a difference and felt the differences".

I thank the two ladies who gave me an opportunity to know the differences I should do for pulling up myself to accomplish the mission of testing with prioritization.


Lessons:

  • Before starting up the stuffs, know the MISSION of the work.
  • Keep evaluating the stuffs or tasks or testing you do, with the mission that as to be accomplished, so that you will not miss anything to repent later for it.
  • Take corrective actions, if unable to reach the mission that as been framed.
  • Testing is showing the differences in behavior of the being tested application by finding the bugs. To feel the difference, we have to do task differently with mission in mind.
  • Reviewing our mission always tells very clearly, what we have to do.
  • Write a mission on paper and paste that in front of your seat, so that you are always reminded about your mission.
  • It is not we testers or developers execute the project; it is our customer(s), who execute our project. We testers or developers make ourselves to execute towards mission successfully by doing differences. And, the customer will execute our mission's perfect, by feeling the differences.
  • No guarantee that, what works for one person to accomplishment her/his mission, will also work for other person to accomplish her/his mission. Think over that.....

To conclude, the above traffic advertisement tells, "Stick to your lane while driving" and Testing Garage tells, "Stick to your testing mission while testing". And thereby, make a difference; feel the Difference.

If you have identified your mission, or evaluated your mission, or taken corrective actions for reaching your mission or you remembered the mission that you have forgot, by reading the above written, then mission of this writing from Testing Garage is fulfilled.





Thursday, November 6, 2008

I Don't Know!

Lessons comes from the consistent practice we do, from the mistakes we commit, by looking at the mistakes of our peers & other people, by interacting, by inferences we make, by reference we look for, by conferences we go for and etc. Being myself a tester by my soul and not just for a profession, getting plenty of lessons every day from the sources (more correctly they are resources that makes me to think and question myself) that I look at.

I always have a determination and focused mindset to take up testing tasks that makes my mind to generate questions continuously by thinking. When I met testers, most said, domain knowledge is very important to test. But, I had my tester who is within me, saying, "Concentrate and practice on the skills and practice with focused mindset to test anything given at any time by questioning; never hesitate to question".

As like all other interview procedure, one day I got a call from HR, asking when you are free in this week for taking up an interview for testing position. I asked her, when interview panel is available at your place for the interview. She said today at 3 PM and me too agreed.

I never tested any electronic product except my mobile phone, my monitor, my friend's CPU, my friend's laptop, my digital watch, the elevator at my workplace and my friend's digital camera. When I asked the HR regarding the company address, she gave the address and description of the company.

I was happy that, the interview was for the Telecommunication domain. But still, I said HR as I am not a graduate of Electronics or Telecommunication and does it meet the position requirement. But, I can test those products and system of electronics and telecommunications. After couple of minutes she confirmed and said, we will be happy to see you today at 3 PM for the interview.

The interview panel consisted two members. They introduced themselves, where one was the Director of Quality Assurance for the company and the other person was Test Manager. They started conversations saying, "we are not young in age as you, but we are young as you in the spirit". I was very glad, to see them and the conversations showed the tester within them. The room had four chairs; myself and two interviewers were seated and one chair remained with no person to sit.

Interviewer A: Can you sit on that chair?
Me: Can I know, why should I sit on that chair? Why not here?
Interviewer B: So that we all here can have comfort talk.
Interviewer A: Is it possible for you sit on that chair?
Me: I don't know!
Interviewer B: What you don't know? It so good chair then you are seated now. Why can't you sit on that chair?
Me: I does not know whether I can fit on that chair or can make use of that chair to my purpose.
Interviewer A: You are thin enough to be seated on that chair. Then, what is stopping you?
Me: Without sitting and confirming that I can make use of that chair, I cannot tell you, that chair is usable by me.
Interviewer B: What is making you to think that, the chair might be not usable by you without sitting or more rightly without TESTING it.
Me: Might be the chair may not withstand my 57 KG weight, or it might be not to my comfort on which I am seated on now, or it might be too heavy for lifting it to here since I am comfort in this place to be seated, or it might be time consuming to move chair over here if it has no wheels and weighs bit more than the chair on which I am seated, or it might be wet, or it might have lot of dust upon it, or it might have pests that feeds on my blood, or it might be for my other good friends i.e., people who are challenged physically, or it might be chair that is used to make BAKRA. This are the few reasons to say, "I don't know," for I can sit on that chair or not.

Interviewer B: I liked that BAKRA!
Interviewer A: Then, how did you sit on the chair you are seated now, without testing it.
Me: Well, I tested the chair while we all were standing thirty minutes back.

Like this our conversation went on. One more question that we get in most of the interviews is , "explain me your project". Where I did not tell what my project details at all in the interviews I had been so far. But, these two people did not even ask this question i.e., 'explain your project'. Instead they asked, "what is the role of yours in the testing you do with your team?". They strongly adhered not to disturb the NDA (Non Disclosure Agreement) policy, which each company will have. Neither my little resume will not have and did not had such details of project.

I kept writing all my observations from, what they gave me to test. I explained them why was that observations and justified them. I was enjoying the interview and it was different from the other interviews I had been for.

Interviewers never bought up Telecommunications or Electronics during interview. I was curious to know, what I will be doing in that company. And, was happy to know that I will be testing one of their product that is used at real time by people.

After testing, and brainstorming tasks, they came to the package negotiation. By now, my testing mind started to get confused. I am not good at that negotiation task still. Totally, I was in the other thoughts of negotiation and they too were talking regarding it.

Interviewer A: Does this pen write?
Me: Yes.
Interviewer B: What?
Interviewer A: Are you fine? How did you infer that pen write, when it is in my hand?
Interviewer B: Thought it is your pen, what he has in his hand now; it might not have written when you have used it again.
Me: I felt like, Tester within me slapped my face and said where are you lost? Wake up from negotiation thoughts.
Interviewer A: I expected "I Don't Know!".
Interviewer B: Never forget your word what you said today i.e. "I Don't Know!". I love that word.
Interviewer A: The tester within you was engaged in working out negotiation, and that made to take off the questioning mind of yours. Being a tester, we too practice that still i.e., to have our mind always in testing perspective at all time. We too do not forget your words "I Don't Know!".
Interviewer B: What is your joining date?
Me: I Don't Know!
Interviewer A: He has caught it, isn't it Interviewer B.
Interviewer B: Yes! What is your probable date to join our test team? We would love to see you with us.
Me: I will intimate tomorrow.

I did not accept the offer due to some of my emotions, but the lessons what they gave me during the interview was different from the other interview I had been for. Those lessons were truly worth one and I have to remember them forever. That's what made their product so well established in the competitive market.

I believe they are reading this now or might have read this little writing by now. I remember this two testing minds, before I start my thinking and questioning with a word "I Don't Know!" and What it is, why it is so and if not, why so?.


Lessons:

  • More than any domain knowledge in testing, the testing skills are more important to a tester. Focus on them. We will learn any domain testing and can test any domain, when we have proper testing skills to test anything at anytime by questioning the product or system under test.
  • Do not say blindly, it works or looks fine for a person without making use of it i.e., more rightly without testing it. It might fit & work for other user in her/his context but not in our context.
  • Do not just accept anything without questioning; if accepted without questioning, we are carrying the fire in our hands without any fire exits; that fire can catch and spread with severe things to pay off.
  • Interviews are great source of learning. Keep attending them as it helps ourselves to know where we are and where we have to pull our socks. Learning is not just in TESTING we do, but it comes in different aspects apart from testing, which go beyond the values that one can give.
  • If interviews are of telling your ongoing and previous project details, never do that. You have signed NDA (Non Disclosure Agreement) for your employer and we will be violating the company policies if we tell our ongoing project details. Do not mention on the resume too. Being ourselves the testers, if we do not test our resume and presentation of ourselves in the interviews, will be of no worth.
  • Before starting up testing our product or System Under Test, say I Don't Know what it does and should mean it to ourselves.

To conclude, whether the above written is useful to you? I Don't Know!


Love Testing!


Thursday, October 9, 2008

Tester get stuffs from Garden City road's too

Learning comes from every where and at any time (more rightly all time) for a tester. As usual, I sat in the BMTC bus to reach my work place. It was Cunningham Road and bus was traveling towards Vasanth Nagar terminal. At the end of the Cunningham Road signal, a board drew all my attention. I could read the words "PLASTIC WASTE ROAD", which was in bigger font size that could be seen from quite far distance.

Got down at Vasanth Nagar terminal, and started walking towards that board, where I saw it was hanged. On reaching the place, I read all the words on the board and understood what it was, only after reading the words in smaller font size.

The words "PLASTIC WASTE ROAD" started to blog my mind with question, "where does the plastic waste are dumped here on this road?" since Cunningham Road was calm, green and clean. This made me to get down from the bus and to walk towards that board for looking at it.

The words, which were displayed below the "PLASTIC WASTE ROAD" explained, what the board was for; but those words were not visible so legibly as it was displayed in lower font size. If we were in the quite near distance say about 10 or 14 steps far away from the place where board was hung, those smaller font sized words could be seen and read to an extent. The words in the small font size was "PERMANENT SOLUTION TO PLASTIC WASTE".

After a few days, saw the same board hung in the Cubbon Road too. It was around 8:30 PM and my friend was driving his vehicle. The below written were the conversation, seeing that hung board.

me: What do you infer from that words "PLASTIC WASTE ROAD" written on the board hung there? (smaller font sized words were not legible to read, from the distance where our vehicle was.)
my friend: It is very ambiguous to me, where the plastic wastes are dumped here on this road ?
me: What is the next thought you are getting?
my friend: Hmm.... (waited for few seconds), no idea. (By this time traffic signal had green light to move.)

Similarly, I asked my another friend, what did you understand or what thought came to your mind by looking at that board. He said, "nothing came to mind seeing that and all was a confusion with those words.".

Like this, I asked many people, "what do you understand or infer by looking at this board in the first sight." Everyone took few seconds to respond for that question by staring at that board or by listening to words "PLASTIC WASTE ROAD". Also I took few people to show that board, and made a note of what they inferred by looking at those words of bigger font size in first sight.

The Cubbon Road is one, which has the greens on both sides of it and a good example to tell Bengaluru as the "Garden City of India". But that bigger font size words "PLASTIC WASTE ROAD", will make to think why these words are written on the board and hung here. Instead it should have given a thought for a common (or any) man in first sight reading as, it is the road constructed using waste and scrap plastics.

Salute to all those people, who work in early morning hours to keep city clean, otherwise it would not have been possible to walk and enjoy those greens on the roads, by people who loves to walk in spite of the busy traffic.

The waste plastic are used here to construct a road by using it as a strong binding agent for tar and making the waste and scrap plastic as asphalt, which makes the life of the road much more longer. The smaller font words explained this to very little extent with the words "PERMANENT SOLUTION TO PLASTIC WASTE". But it was not visible clearly, when we are traveling in a vehicle at a speed of 40 kmph if we are at quite far distance from that board or if we are at a distance of 15 steps or more from that hanged board, which had these smaller font size words.

But those bigger font sized words could have made easy by using better words other than "PLASTIC WASTE ROAD", so that any person who read and understand English can infer why the board was hung on that road.

Anyways it is a good move from the Bengaluru's city corporation (BBMP), to give roads of good and best quality by keeping city clean from scrap and waste plastics, by using them as asphalt for the road construction.

The words of bigger font should be much clear and should not give any ambiguous thought in the reader of that board for the first time. The words that were suggested by the people (who mistook those words for first time on reading them) with whom I discussed this topic, are written below:

  • WASTE PLASTIC ROAD
  • ROAD CONSTRUCTED BY PLASTIC WASTE
  • RECYCLED WASTE PLASTIC ROAD

Did you get, why did I write this little post here in my Testing Garage? (this writing might be a waste plastic scrap for who does not like learning; hope and sure no software testers sees this writing as waste plastic scrap and definitely testers makes use of it).

It is a stuff to do with Usability Testing, which makes our product to reach any person who sees and makes use of our product. It is in the hands of the testers to deliver the system or product which have no ambiguous terms, statements, words or displays.

Most of we testers would have seen this type of Usability errors during installation testing in the installation wizard and in the words displayed in the dialogs, etc.

Usability testing and Usability engineering are different terms. The measurement of easiness in using a product or piece of software can be called as Usability Testing. Whereas, the research and design process that makes and ensures the products with good usability can be called as Usability engineering.

Traveling in BMTC bus, yet again taught me a good lesson in Software Testing !



Lesson's learnt by Passionately Exploring Software Testing:

  • It is also a tester duty to ensure that terms or words or pictures or symbols or logo in a system/product ready to ship, does give right meaning to user/client/customer, on reading or seeing them at first sight.
  • It is Testers responsibility to check iteratively right from the beginning stage of design till and after product or system release stage for the best Usability.
  • While you are testing your product/system, think of our friends (customer/clients/users) who have the disabilities. The usability of our product or system should provide stretched hand support to disabled users also. This is challenging stuffs of Usability Testing and Usability Engineering.
  • Make a questions and objectives rather than finishing up every task in hypotheses for any kind of testing (this includes Usability Testing too).
  • Always have a group of end users at your testing place, for whom the product or system is intended for. Let that group work with the product with you. And, this group chosen may be picked up randomly.
  • Simulate or provide the environment for the group which is similar to their operational environment. This brings you with lot of input for better Usability.
  • Ask questions and feedback's to those group. Observe the activities of the group while using your product/system by keeping yourself quite and patience with keen in observing them, unless the group seeks your help by calling you to their seat.
  • Always have and consider the list of those improvements needed for the product or system, which is provided by the end users/customers/clients.
  • Also, test your product in the customer environment because testing is always a solution in our environment. (so, testers should be sent to client/customer places. This brings lot of improvement in product/system and benefits to employer as well as the customer/client/user).
  • Show interest in market and generation (people of all ages) attitude, as they can be source of useful information for Usability.
  • Giving the efficiency, reliability and handful of support in the shipping/shipped system or product is of no use, when the Usability is not up to the quality that stops using system/product from operation.
  • Usability is not only in the display, but it is also in the how quick the customer/client is able to start working confidently in the shipping/shipped system or product i.e., learning curve with our product/system delivered.
  • Good usability, reduces the training duration by considerable amount of time to the product/system vendor.
  • All the used characters that imparts the meaning and purpose, should be legible and understood at the first sight.
  • The more count of satisfied customer or client using our shipped product/system means, the Usability been provided by us is satisfying. But, there should always be continuous and consistent improvement using the feedback's of customer/client/users.
  • Documentation or Help, is also part of the Usability. Make sure the documentation or help content are updated periodically whenever there is a change in any of the components of product or system. And, let it be in simple language so both novice and experienced users can make use of them completely.
  • Organizing the contents in the Documentation or in Help, is also a part of Usability. Make sure the order of the contents are in right order.
  • Navigation through the product/system should be easy and successful, which tells and depicts the Usability of the product/system.
  • Try to gather information from market analysis "Which of the Usability design is most effective to user?"
  • Be sure for what tasks or operation, our customer/client/user needs help or documentation support.
  • The technical support or support desk of our delivered product/system, will have good answers for the Usability of product/system from our product/system users.

If something has got from this little writing of Testing Garage, the usability of this post has done its work.


To conclude, "Testers are on road too....."


Love Testing!



Monday, September 29, 2008

Testing Garage salute to its teachers and Guru's.....

My Dear Friend and Reader,

I am Ravisuriya, a young passionate exploratory software tester from Bengaluru, India. I have been into testing by exploring & enjoying testing product software's along with freeware software as a hobby and testing myself too.

I started writing posts on my blog, when my friend Kantharaja said "why don't you write your thoughts and passions you have for testing?". Truly, I did not know what a blog is, till then. Later he explained me what it is and what we do with it. I am thankful to him.

Today, I was telling and questioning myself, "what I have done so far writing my thoughts on Testing Garage as a tester?". I felt and realized that a mission or moto of my blog is not at all present here. Hence writing these words, which will state the purpose of my blog. Also its my duty to give the respect for the people, who made me what I am so far.

My blog tells and shares with you, all my sand dust experiences, my thoughts, my understandings in software testing. Any published items or contents will not be of my employer(s) or other people. Will be writing my friends or mentors experiences only upon their permission. Being a tester ethically and professionally, I strictly follow the "Non Disclosure Agreement", which my lead taught me what it is.

This will not be the place which will have the definitions of terms related to my profession. Instead it will be a unique place for bringing up the testers and testing, by inspiring myself and inspiring other testers.

I dedicate all of my writings to my parents who taught me the questioning and thinking, which came from the poverty in my house. I ask and use to ask my mother (my guru and first teacher) with curiosity what it is and why don't we have with us. She gave and being giving such an answers that made & making me to think and think; where later she asks, "did I say anything wrong child?". My father too being teaching me how to be sincere, honest, truthful, dedicated, passionate and involved in what ever he does. Salute to my parents who are being giving me beautiful lessons of life.

Then, my test leads and peer testers whom I saw in my professional life so far too deserve the special place in my heart and soul. A person Somanath Kamble, taught me for the first time how to write a Bug Report. I am thankful to him.

I started testing, without any training in testing or not knowing what is testing, to speak honestly. Did not know the various aspect of testing. Later my test leads Mrs. M Mathew, Mrs. M Shukla and Mrs. S JaiGanesh are being teaching me in testing by their testings and guiding professionally and personally. Salute to them and all these people (my teachers) have their own places in my heart with soulful of respect forever.

My peer tester Kantharaja, who bought up lot of questions in my mind, by his testing experiences when I was a fresher sitting beside him in labs, deserves every respect in me for him. Mrs. Jean James, a senior tester (senior citizen too) and QA consultant, who is a very good friend and being guiding me personally and professionally has a respect from me forever. She is being teaching me lot in testing as my leads did & doing. Mr. Bill Heptig, a senior tester (senior citizen too) who taught me "I will be happy, if I can help you" writing in a mail to me, taught me what a tester should be. He helped me lot in learning test automation and has respect from me to him always .

Now, comes the person who inspired me for writing up the posts on my blog. He is a Rapid Software Tester, honest and sincere tester by ethically & professionally. Hope you are curious to know who is that person. He is Mr. Pradeep Soundararajan, my guru. He has never seen me and I too have never seen him.

But, I have heard regarding him from my friend very recently, when my friend saw my Testing Garage writings on testing. It is a Dronacharya and Ekalavya relationship, I owe to Pradeep Soundararajan.

Pradeep Soundararajan, is being teaching me from his experiences and I am learning from them. He has influenced me in great deal as a tester and he has made me today proud to tell, "I am a passionate Tester".

I should mention Mahesh, who reads my writings and does give the comments on it. Which is being helping me lot. The other friend of me is Selvaraj, does always say "I don't read your writings"; which makes me to write always. But, he reads them and tell "I don't read your writings". This two artistic developers are teaching me good lessons in testing. This two guys deserves respect from me.

One of my childhood friend who studied with me from kindergarten to engineering and a cool artistic developer, Prabhakar, too gives me lot of comments which are useful to me and that teaches me lot and lot. I am thankful to him.

Feel always free to share your comments and experience when you come to my garage, "Testing Garage". Those will be source of learning and lessons to me forever.



" Never limit your challenges; challenge your limits....! "
"
Every change is not a progress, but every Progress is a change..... Do it Now ! "
"
Expect more from yourself than from others. Because expectation from others hurts a lot, while expectation from you inspires a lot.... ! "



Love Testing!

Monday, September 8, 2008

Localization in mobile phone


Localization in mobile phone

I always keep working with mobile phone in my hand, when I am idle, seeing how this works and looking for what it has within it. One fine day, I tried to enter the digits "100" from my mobile keypad which was locked. Later, tried with digits "112" and "911". The digits appeared and option "Call" was displayed. My testing mind started to proceed further, with a question mark in my mind "Why not for 100?".

My dear reader, you might ask 'it is common in all the mobile phone that, either pressing the digits "112" or "911" from a locked keypad, still the number appears on display and a call can be made to any of this number i.e., "911" or "112".'.



Topic
Localization in mobile phone begins

Now, sit calmly and take a deep breath, I will wait for a minute.... OK, are you done. Can I know how old are you ? Also, can you tell appropriately how old your good friend is ?

OK, no problem I will wait; calculate your age............ . Did you complete doing that calculation; now can you tell me how old are you with a confidence........... . I heard how old are you, but still it was like that you are not very sure of the age you thought and said; anyways thanks for that calculation, you did just few moments ago.

Let me take you now to other conversations, that I had with few people of all age groups; the conversation with different people were like this:

** Abdul is aged more than 70 years. He has completed is BA degree from Bangalore Central College and owns a fruit stall. Me and my school friends go to his shop from my childhood days. Our conversations were in Hindi mixed with Urdu a bit. Writing those conversation in English below.

Me: Hi uncle Abdul ! How are you?
Abdul: Hi child. God's grace, I am fine. Come in. How are you? Where did you go this many days?

* after few conversations, I asked him:

Me: Uncle, how old are you?
Abdul: Might be 70 or 80 child..
Me: Did your parents provide right date of birth, while joining to school?
Abdul: Yes, my parents had given right date of birth of me. My mother always said me this.
Me: What is the phone number of local police station area ?
Abdul: I don't know that.. Why are you asking police station phone number child?
Me: I wanted to store it in my mobile.
Abdul: Dial karo 100 ko, awaz sunthi.... (Dial the number 100, you will hear a voice).

** Rammakka might be aged more than 75 years (as said by her Rammakka's daughter). Rammakka, did not get opportunity to get her education in those days. She stays near my friends house.

Me: How are you grandma?
Rammakka: Come man, how are you. See I am like a strong girl. Look, how thin are you. Don't your mother give you a food.
Me: Tell grandmother tell, whatever you tell I listen.
Rammakka: thale haraate, neenge budhine barolla hogu.. (mischief boy; go, you never get right wisdom)
Me: Grandmother, how old are you?
Rammakka: Why do you want my age?
Me: simply, just like that...
Rammakka: I don't know... Might be 80 years old..
Me: You have a mobile phone with you right?
Rammakka: Yes, my daughter gave me it as a gift last year....
Me: What's your contact number, please give me...
Rammakka: I don't know all those numbers... My daughter saved the number in this phone with my name. Take that.
Me: Do you have police station phone number with you ?
Rammakka: Ayyo Rama, beda kannappa... naange control room number gothu (Oh my god... I don't want that number... I know control room number)

** A person came to my home from my village. His name was Thimmana Bhat. He is a former and grows crops, vegetables, flowers and many more in his land. My conversation with him was like this:

Me: Uncle, how are you? Had your dinner?
T Bhat: I am fine... How are you? I had your dinner...
Me: How family members are doing? How is the crop harvesting going on? How is the heavy rainfall?
T Bhat: All are fine... Near to our place, a river was over flowing.. Police and other people came to help for moving people from banks of the river.
Me: Do you have the police station number of your village?
T Bhat: I don't know the police station phone number... If any such incidents happens, we will dial to control room..

** I had a conversation with our neighbor's child's who were studying in class 1, class 3 and class 5.


Me: Which class are you studying?
Dominic: LKG, UKG, 1st standard..
Me: What are you playing in my home?
Dominic: Hide and Seek with Kavana, Peter, Arjuna and Khadir.
Me: What is 911?
Dominic: It is 1.. 2... 3...
Me: What is control room number?
Dominic: Police number 100 to 103.
Me: 100 to 103 means what?
Dominic: 100, 101, 102, 103.
Dominic: I want to hide, leave me...

Like such conversations, I had talked to my friends and with people of various age group asking what is 911 and control room number. At majority, I got answer for 911 only from my friends and people who knew it from a SMS's which was like '112 or 911 is a number to be dialed in emergency and it will work if no *network coverage too'. While others said I don't know the 911 or 112 or police station number. Dial 100, its enough.
* without network coverage a call to 911 or 112 is not possible from mobile phone.

Reading the above things, you are asking me, "what are you gone mad, writing unnecessary and things unwanted". No, my reader, I am not doing so. This post topic's has begin already in few conversations above. I will get it much narrowed down now - Localization in mobile phone.

Take your mobile phone if you have and press number 100 with key pad locked (if you are in India and using cell & SIM of Indian service providers, dial 100; else 100 might be of no sense to other friends in/from other part of world). Did that number 100 appear in display to make a call? No, then press number 112 with keypad of mobile phone locked. Did 112 appear in display for making a call. Check for how long it appears for making a call, since the display takes off that number from *view. Similarly press number 911 with keypad locked and observe for how long it appears on display for making a call.
* some mobile phone displays digits 112 or 911 for 5 seconds and some for 10 seconds.

If you ask this 911 or 112 to many of us here in India, will not know what they are for. Probably, we might get answer as "I never heard of it". Might be our family members too and few of our friends too will say "I never heard of it" or "I don't know". If you ask what is the Police Control Room phone number, at least we will have majority of the people in India who can answer that, who said I don't know or never heard of 911 or 112.

Even, most of kids going to school nowadays tells all the emergency phone numbers like 100, 101, 102, 103 and other helplines which will be said by their teachers, parents and looking at TV advertisements. But, the information regarding 911 or 112 will not be imparted to them most of the time or to be specific not at all.

Now let us see, how the topic is related to Testing. This is were the Localization Testing comes to picture with the System Under Test or Application Under Test. To define what does Localization means, it is a process in software to adapt to a new region or culture. The other definition read from wikipedia is like, "In computing, Internationalization and Localization are means of adapting computer software to different languages and regional differences. Internationalization is the process of designing a software application so that it can be adapted to various languages and regions without engineering changes. Localization is the process of adapting software for a specific region or language by adding locale-specific components and translating text.".

When the application or electronic gadgets, is shipped or developed it should have both Internalization and localization customized within it. Today, testing this features i.e., Internationalization and Localization is turning out as a separate branch of testing, where the people who have expertise in this fields are being involved along with the local regional people.

No doubt, mobile phones comes today with the localization facility like selecting different regional languages etc. But, the basic one in localization should not be missed out like dialing of 100 is not possible in India like dialing 112 or 911 (dialing of 112 or 911 is possible in India as of today).

People across the country (India) speak different languages, which all of them cannot be incorporated into the design of mobile phone. But, the digit '100' which is unique through out the India and it is not localized in the mobile phones, that are sold in India. All the major mobile phone designers, manufacturers and service providers need to think of this during localization.

To have a more information regarding emergency call numbers information of various countries, click here.

Me tried to *dial this numbers i.e., 112 and 911 from my mobile phone for several times, but the call was not successful. One day, I asked my friend to try this from his mobile. For the first time dialing number '112', the call was successful from his mobile. Below were the conversation:
* dialing either 112 or 911, 'Attempting emergency call' will be shown on the display of mobile phone as expected.

Me: MSH, can you please try this numbers from your mobile phone.
MSH: Yes, I will try.
MSH: Dialed 112.
From other side we heard, "Namaskara swamy, Police Control Room" (Hello Sir, Police Control Room). I took the call, but due to the low battery, the call was aborted. Salute, to all those police team's who work sincerely & honestly 24x7 to keep law, peace and harmony with justice in society. After charging up the battery, dialed the number 100 from the mobile phone, a shock was heard "You seemed to have dialed a wrong number, please check the number you have dialed."

When, we can connect a call by dialing 112 or 911 which is not known by all of us, why not by dialing 100 in India which is known to all of us in India?

One more news recently published in English daily "Times Of India", is number 108 will going to be a national wide emergency helpline. Click here to view the news.

The mobile phone in India, should work strictly with numbers 100, 101, 102, 103 and for 108 too (if it is implemented as national emergency helpline in India) same as 911 and 112. It is in the hands, mouth and brains of the testers, to bring up such questions. Let all the testers, testing the mobile phones raise this questions to have a service hand for people of India and for other nation people, who don't have their own emergency call numbers like 100 in India, since all the people (in India) are not literate and today mobile phone can be afforded by any person. But all most all people who are not literate in India, they can surely know what for number 100 is, if not what for 101, 102, 103, 108 (in future days), 112 and 911 are.

Like India, many countries have their own emergency call numbers which might not be 911 or 112. People of such countries should get their localization in the mobile phone for the emergency call numbers.

Testers, join your hands to provide secure globe with safe technology and its application's by your testing.


Lessons learnt:
  1. During developing an application or an electronic gadgets, Internalization and Localization should be considered without any negligence.
  2. Localization in application or electronic gadgets is must, since all the people will not be literate in a country/state or might not know what are the standard internationalization features though educated.
  3. Testing should be very thorough, since good testing can save and yield good fortune and results. Bad testing always leads to destruction's and bad fortune.
  4. Being a tester, should think of such instances where the application or electronic gadgets can be enriched to provide better & safe world, rather than thinking of to get and increase the customers, clients and income revenues for the employer. Giving better world, in turn brings the employer everything on the winning edge.
  5. Testers, should never stop questioning. Other may think your question as silly; but they don't know your thinking testing question's may turn your product to the safe and productive one.
  6. Do not see or consider only one view while testing SUT. Think of all standards and measures.
  7. Talk to customers, peers, observe how people of all class use and work with the existing system. This helps and provides lots of inputs to Testing activity.
  8. Instead of testing the test cases, which are obtained by interaction, reviewing, designs, thoughts and analysis, do test something that are of needy one necessarily to people along with test cases (said this, because test cases may fail, but the needs of the people will never fail or die. My friend *Kantharaja, use to tell me that, a good test case is something that makes the application or system fails rather than making system pass the test).
  9. Before starting a test, read the SRS, SFS, Use cases and all other documents. Say, you have done tests for 'n' times and now started doing the tests for (n+1)th time, do not neglect to read the documents once again because they bring lot of questions, bugs, new features that must go in shipping.
  10. Importantly, give your test cases to your fellow testers, developers, customers, architects, business analysts as they can bring much more constructive into testing. If possible talk and exchange your views with them. And, at last never stop reading test case thoroughly and completely line by line before starting the test, though you have done and tested for 'n' number of times and the test has passed for 'n' times too.
* Kantharaja was the person, who brought me up the idea of writing a blog to share the passion of testing. He is a questioning tester and taught me lot in testing. I am thankful to him.

Love Testing !

Thursday, September 4, 2008

Google Chrome crashed

Google Chrome crashed


Today morning, my friend "SP" gave a ring, to my cubicle and the conversation was as below:

SP: Maaga, coffee'ge barthya...? (Do you come for coffee ?).
Me: Yes, 5 minutes.

* when I went to cafeteria, I did not see him. Walked towards the smoke zone. He was sitting quietly.

Me: Yeno Maaga.. (What man?)
SP: Hi! Sit.

* we had a few chat regarding the Ganesha festival celebration and the tasks that he and me was doing.

SP: Did you work on Google Chrome web browser?
Me: No, not yet. How it is tested ?
SP: Don't you have any other words that comes from your mouth? Same words always, how?
Me: Come, let us have a coffee.


Topic Google Chrome crashed begins

After having coffee, came back to my cubicle and started downloading the Google Chrome and installed it.

The two tabs were displayed below a opened Window's application title bar (below snap), when I launched the Google Chrome. Maximized the Google Chrome, and saw no title bar. Instead the tab's header displayed a opened website information as a title on tab header; when mouse was moved over tab header, a screen tool tip was displayed with the same information that was on tab's header. Similarly, the progress bar appeared at left bottom of console on moving mouse to URL bar while loading the web page of a site or for any other browsed content.

snap showing Google Chrome being displayed below a standard Windows title bar.

Started to look for the features that Google Chrome provides apart from the other available browsers. Found few things, among them were 'Task manager', the useful one along with "Report bug or broken website..." and "New incognito window" (which will have a gray ash color being different from normal Google Chrome window) . Entering a web address at URL bar, browser displays the option of typed words for a search using selected Search Engine.

Searching for a phrase or a word in Google Chrome, it highlights all the words/phrases/letters that matches, by giving total number of matched. Moving the up & down arrows, it traverses the matched search item, by giving that particular word/phrase/letter position count in the total numbers of matched item present. Apart from this, the vertical scroll bar of the browser will have the yellow-brownish color lines, where all the matched words present. Which makes easy to look into the line where the phrase/letters/words are present.

Now, started to download few applications from the web. Without asking the user, that do you want to download, it began the download operation (should have been asked like, whether to continue or begin the download operation).

Google has listed the other search engine along with itself. The other search engines listed are Yahoo!, Live Search, AOL and Ask (which gives a feel & kind of message, 'Live and let us Live'). Any one of the five search engine option can be chosen. Yet another feature was, drag and drop of tab to a new browser and a browser window to a tab.Noticed that Google Chrome had good speed when compared to other browsers, but during few operations the speed was dropped down. More than one Image Name i.e., "chrome.exe" was displayed and this depended on the number of tabs that were opened in the Google Chrome browsers (noticed this, when the performance of Google Chrome was slow.) Look and feel was simple, but not to the mark what Google provides and known for. No doubt, all the issues of Look and feel will get fixed in final beta release (I saw only few of them today; testers performing web testing using Google Chrome, can find many more which can be more complicated).


Few basic features and bugs should be sorted out in Google Chrome:

  • Clicking on 'New tab' which is available on the left hand side of the browser, does not open a new tab.
  • Closing all the tabs that are opened in the browser, makes the Google Chrome to get terminated.
  • In a new tab, entering keys 'CTRL + B', makes the bookmarks to get detached from the URL. Say, in the same browser you have a tab which is showing some browsed web information.; entering 'CTRL + B' does not even show the detached bookmarks. This creates void confused thinking in the user. As all the users of Google Chrome are not technical persons and will have same level of thinking and understanding always.
  • Before starting to download any contents from web, Google Chrome should prompt the user whether to continue downloading or not. This may save user from various threats by today's web world.
  • Home button is not displayed by default. User should try to find where the 'Home' button is located in the browser; later she/he should enabled the option to display the 'Home' button.
  • In the below snap shot, observe how the two Google Chrome windows look. The top most tabs displayed are of one Google Chrome window and the second row tabs are of the other Google Chrome window. The top most window's row as taken off word 'Google' from display, as the window being maximized. The second row displays the 'Google' word near the minimizer of the window. Taking off the of product vendor name from display when maximized, is not a good admiralty of the product. In other view, taking off word 'Google' from view in the window on maximizing the browser, can be interpreted as, Google cares for service rather than making up its advertisement (don't know how far this holds good i.e., 'advertisement'. No doubt in its services, which is a good one and that makes Google a unique.).


snap showing tabs of two Google Chrome windows.
  • In the above snap, notice the tab header and its contents. It will be difficult to know, what the tab contains, unless the mouse is moved over the tab or by clicking on the tab.
  • Many more issues were noticed; while collecting those snaps and writing up those data into my observation book, got a shocking warning message dialog after 4 hours of work with Google Chrome, "Whoa! Google Chrome has crashed. Restart now?".


Google Chrome crash message


I said this news to my friend "MSH" who sits quiet near to me. He showed me the another way of doing it which he read from a web just then, and I was surprised to see it; and all the feel what I had when I saw the CRASHED word on my machine, evaporated like a dew on a lotus leaves. Still, I am happy, that my testing for nearly 4 hours, gave me "Whao! Google Chrome has crashed. Restart now?".

Thanks, SP and MSH for sparing 10 minutes for me.


Sunday, August 31, 2008

TestComplete's Data Driven Test

TestComplete is a test automation tool from AutomatedQA. It provides several features as other automation tool does provide and supports for various technologies on Windows platform. Let us see a code snippet which is in VBScript, used for a Data Driven Test using Microsoft Excel sheet.

TestComplete's Data Driven Test


Below written is a VBScript for Data Driven Test using automation tool, TestComplete 6. The script automates for booking a flight ticket using Mercury/HP's QTP sample flight application. The excel file will have the data, which is used during Data Driven Test.


' The script starts from here.

Option Explicit

Sub openForm(w1)
Call w1.MainMenu.Click("File|New Order")
End Sub

Sub insertOrder(p1,w1,w2,Driver)
Call w2.Window("MSMaskWndClass").Keys(Driver.Value(0))
Set w3 = w2.Window("ComboBox", "", 1)
Call w3.ClickItem(Driver.Value(1))
Set w3 = w2.Window("ComboBox", "", 2)
Call w3.ClickItem(Driver.Value(2))
w2.Window("Button", "FLIGHT").ClickButton
Set w3 = p1.Window("#32770", "Flights Table")
Call w3.Window("ListBox").ClickItem(Driver.Value(5))
w3.Window("Button", "OK").ClickButton
Set w3 = w2.Window("Edit", "", 1)
Call w3.Click(55, 11)
Call w3.Keys(Driver.Value(3))
w2.Window("Button", Driver.Value(4)).ClickButton
Call clickInsert(w2)
End Sub

Sub closeApplication(w1)
Call w1.MainMenu.Click("File|Exit")
End Sub

Sub clickInsert(w2)
w2.Window("Button", "&Insert Order").ClickButton
End Sub


Sub Main ' point of starting the script execution.
Dim p1
Dim w1
Dim w2
Dim w3
' creating a Excel driver object.
Set Driver =
DDT.ExcelDriver("G:\RAVI\TESTING\testComplete\sampleProject\flightDDT.xls","flightDDT",false)
Call TestedApps.flight4a.Run ' Application Under Test (AUT/SUT).
Set p1 = Sys.Process("flight4a")
Set w1 = p1.Window("#32770", "Login")
Call w1.Click(55, 6)
Set w2 = w1.Window("Edit", "", 1)
Call w2.Click(24, 8)
Call w2.Keys("mercury")
Set w2 = w1.Window("Edit", "", 2)
Call w2.Click(16, 11)
Call w2.Keys("mercury")
w1.Window("Button", "OK").ClickButton
Set w1 = p1.Window("Afx:400000:b*", "Flight Reservation")
Call w1.Click(50, 7)

While Not Driver.EOF
Call openForm(w1)
Set w2 = w1.Window("#32770")
If Driver.EOF Then
Call DDT.CloseDriver(Driver) ' closing the Excel Driver object created.
Call closeApplication(w1) ' closing the AUT/SUT.
End If
Call insertOrder(p1,w1,w2,Driver) ' call to a procedure to insert the data from excel sheet.
Call Driver.Next ' moving to the next row in the excel sheet.
Wend
Call closeApplication(w1)
End Sub ' End of a "Main" procedure.
' The script ends here.
*************************************************************************************


Learning's:

  • To begin, Data Driven Test from the above script, makes use of Excel Driver, which creates a object for an Excel sheet.
  • Syntax or declaration of driver:
DDT.ExcelDriver(Filename, Sheet, UseAceDriver)
  • Filename: is the name of excel file being used.
  • Sheet: is the excel sheet which has the data, that will be used for test.
  • UseAceDriver: a Boolean value. If True, TestComplete makes use of ACE driver to connect an excel sheet. If it is False, TestComplete connects to the excel sheet via the Microsoft Excel ODBC driver. ACE driver lets us to connect Excel 2007 sheets together with earlier version of Microsoft Excel.
  • Driver.Value(n), carries the data from excel sheet. The first column of the excel sheet is read as zeroth column.

The GUI which takes data from the user, can be fed with the relevant or irrelevant data which we want to test with, for 'n' number of times or for the desired iterations of tests run. The content format of the excel file is as below:


DATE FLY FROM FLY TO NAME CLASS FLIGHT
091108 Denver London Testing Garage First 20263 DEN 11:12 AM LON 06:23 PM AA $112.20
010109 Frankfurt Los Angeles Ravisuriya Business 20324 FRA 09:12 AM LAX 04:23 PM AA $112.20

End of topic "TestComplete's Data Driven Test"


Off-Topic note learning:

Finally to conclude, the automation is not a solution for busy and challenging test execution process. It provides the supporting hand to repeat the tests for test conditions which needs to be executed repeatedly. But, the 'Manual Testing' or a Tester testing sitting in front of the SUT/AUT is much result oriented and provides information regarding the quality measure of AUT/SUT; because tool only does the task scripted but the tester (human) has the intelligence & capability to identify the risks from doing things repeatedly with her/his thinking capability, which are uncovered by test tools.


Love Testing !


Wednesday, August 6, 2008

Bug - Exception “Illegal Argument/java/lang” displayed on Nokia 6080




-->
Mobile phones are used by people of different category, right from person who does not know to read & write to the person who can read & write. Where as, people will come into different category who cannot understand technical description and to the people who can know the cause of the technical description.
Here where the usability comes into picture. The most needed one, for today’s competitive technology to reach the customers market is Usability. Usability is not only the screen of a computer or a laptop, but it is also in handling the electronic gadgets.
Lot of research and innovation needs to be carried out and being conducted in this part of the testing i.e., “Usability Testing”. Salute to all those thinkers & testers who worked and being working on Usability.

Picture: Usability of Mobile Phone

No doubt, Nokia has good usability where a laymen can operate very easily with any models of it within a short span of hours.

The date was not 19th of the month. Few months ago tried it for 3 days i.e., on date 5th, 6th and 7th , to find why the "19" was displayed; but all what I got was more and more curiosity. The date set on the mobile phone was very correct for the day's calendar date.

Navigation through Menu > Application > Collection > World clock, displays the Java exception “Illegal Argument java/lang/IllegalArgumentException illegal month 19”. Just think of a laymen who does not any Java stuff and wants the time of cities she/he desires when the above written exception displayed. Also, think of the person who does not know to read and write in the above situation.
Picture: Snap of the error and exception thrown


Video of the navigation and exception thrown


Auto-update of date & time was turned on with option “Confirm first”. The other two options were “On” and “Off”.
Work Around, for the above issue:
On choosing the different date format, the exception was not thrown. The World Clock showed the time of the selected cities.
* Note:
Irrespective of the date format, the message displayed should tell the cause in laymen language.
----------
Few more bugs were seen with this model. One among them was, unable to open the Message’s Inbox (the work around is to switch off and switch on the mobile). Messages were not overflown in the size/content.
It is very happy and pleasant time for me, when I have Nokia 6080 in my hand as it is showing many new things to improve my little sand dust testing skills.