Friday 29 November 2013

My style of defining testing and its concepts


Here I share my thoughts about testing and its concepts. I have mentioned few and I will be updating few more about it in my upcoming blog post. I personally do this for the people who are “blind believer”, who always go with book /links in search of defining something. I would be happy if those people change themselves and define things by their own on what they know. I would suggest people not to follow someone blindly by not knowing the reason for following them and not even knowing who he/she is.

What Software testing is?
Software testing is about applying the question that was asked by ourselves to evaluate the behavior of the product.

Manual Testing:
Testing that was carried out by human. Where he/she test to check the behavior with the eye witness in many cases.

Automation Testing:
The software that test the another software based on the standard it has been made.

Quality:
Quality =Value
I believe we can’t test for the quality intentionally. We could test for its behavior. Product quality is what the product success is. Quality comes from the user end (Users acceptance/interest over that product)

Bug: 
An issue in a product. It could be of programming, design, Requirement fault.
Example. You add a sugar to the cup of good water. When you drink you should feel the sweet taste but not the bitter taste. The bitter taste is the bug in the sugar. 

Tester: 
Who is not a Scientist, but he/she should think like a scientist
Who is not a Judge, but he/she should be good in making decision
Who is not an Astrologer, but he/she should be able to predict the products behavior

So, the professional who has the attributes of those three is called as a tester.

What testing and approach mean to me ?

Here are few things from my tweets, follow me @pradeeplingan1 for more updates.
  1. To expose your work, question others when there is a need for it or hide your calmness when then is no need for that.
  2. How you define testing, is how your testing probably be.
  3. Reporting and getting fixed of a single bug is worth more than the 100 reported bugs that are not fixed and not even considered
  4. Behavior of the product is about how the product respond to the question(s) you asked.
  5. Quality assurance: They question the people, but not the product Quality control: They question the product, but not the people.Questioning both the product and the people is what the testers should do
  6. Did you speak with the product? How best the product convey its answer for the questions you asked,rate the products usability from it
  7. Discover your world" Doesn't mean that you need to find an another world. It is to find things that are hidden in/around you.
  8. Tools are like horse blinkers,it don't have a way to re-think.A human brain should not be trained in such a way.Good to be tool smith but not tool dependent.
  9. Bugzilla is a tool not a skill. Writing reports using such tool is a skill.
  10. Critical thinking ( an Imaginary Syntax) is the basic need for doing a  better testing quality, Creativity,
  11. Testing is an art one can't have(learn) it unless one know how to think critically.
  12. If you blindly follow the standard written by others, you have not started learning testing.
  13. A  Tester should not be a horse blinkers. Turn your head and see what's happening on all sides
  14. I believe we can’t test for quality intentionally. We could test for its behavior.Product quality is what the products success
  15. Quality is nothing but value. How can u test for a value when there is no count in the board. You cant test for quality, but we believe it.  Wait for my next blog " My style of defining testing and its concepts".



Friday 22 November 2013

Testers Checklist-2

                                                                                                  
Here are the list that I have prepared for test enthusiasts to ponder over at the beginning of their testing career and those who have chosen software testing as a profession.


If you see software testing as not only your profession but a passion too, I hope this would be useful and you would have been following it probably.




1.      Communication:
When I mean communication most of us think about speaking/writing in English. Remember English is a language. There are some countries whose native language is not English. English could be a preferable choice if only the clients understand that language.Communication is the ability to communicate with all people. It could be in any language. In case of your project, if your are working for the US/UK/Australian clients then the medium of communication preferably will/can be English. It could be tough to learn some “X” language to communicate with the clients/ colleagues those who don’t speak English. In that case English would be better to manage for some extend. If you couldn’t able to catch up their languages, learn the language they prefer you to speak. But most of the Indian industries go with English because of clients they work for.


Speaking alone doesn’t come under communication skills, even writing too. Writing is another way of communicating with people. But this requires much more care when compared with speaking. Because writing doesn’t hold natural humans expression/Feelings. So, it could be misunderstood sometimes, for the people who are reading from the other end. So, have an extra effort in practicing writing more than speaking through word of mouth.


Let the audience decide if English is the most sorted language and if written is better or is oral communication as it is instance based and changes with the context.
Any communication is less or more depending on the who we are dealing with.
At times both written and oral communication is not sufficient. Non-verbal communication has its own place.


2.      Interest:
Interest would help the people to walk forward with more enthusiasm.  Rate of your career growth depends on the rate of your interest that you hold probably. Interest is an emotional feelings.It is like an engine that will help you keep moving in better way with love and joy. This could even make your life colorful. Because your profession is also associated with your personal feelings/life. So, find your interest that are in you and work with that. NOTE: You need to really work hard to find your interest that are in you.Because it is hidden always. Sometimes you may not find it throughout your life and you may miss your lovable life. So, I suggest you to sit calm and question to yourself to know more about you. This is one way of loving yourselves, your emotions/feelings.Many people have succeeded in their life, but only few people have become as a superstar in that concerned field because they are passionate about it. They would have learned about themselves more than anything else. Here are the list of some people who belongs to those list.


1. Sachin Tendulkar
2 .A.R. Rahman
3. James Marcus Bach
4. Pradeep Soundararajan
5. C.N. Rao
6. A.P.J.Abdul Kalam and many more


3.      Accept the Challenge:
Things( I would  say support, appreciations, Time and anything that you are more concerned about) that are nearby you will never be on your favor all times. Sometimes, it would hurt you as you never expected. Same, being in any profession you can’t relax with the role that you hold today. Tomorrow it may not be yours because of the competition world. So, ready to take up any challenges.Don’t be scared to learn and fear that you can’t do that.For the people who love challenges kudos to you. For the people who are bit scared I would suggest, you could go through some of the links that I have mentioned in the points 21.Hope  this might be helpful for you.


4.      Thinking Ability:
Thinking is another most important skill among the other that I have mentioned so far.When people ask about skills most of us don’t update thinking as a skill in our CV or in any profile that are shared in any social media. I personally feel that, How good your thinking is ,how your testing ideas/test cases are designed and this is how your testing probable be. So, improve the skills of thinking to make your testing better. This is another way that you will find  the difference among others.
5.      Courage to Listen:
Listen to the people whom you are speaking with or approaching. Allow them to speak to let you know their opinion on your decision.  It would be unfair, if you don’t have the courage to listen on your colleagues/ any concerned people ideas. And you might be on the wrong path, if you stick to your ideas without listening others opinion.


6.      Boldness to Speak :
Whatever you want to share you should be able to speak by facing their face. If you don’t have much courage to do that, you might be missing some points that are running in your heart/mind and you won’t express yourself in a better way as you expected. So, try to get rid of shyness, scaredness if you have such character.


7.      Share your Thoughts:
Share your thoughts with your colleagues. So, that they would probably share their thoughts with you. This would help you to learn much better sometimes or they may learn better from you.



8.      Know what Testing is :
The most important thing is to know what testing is than just going with some “X” document or following it blindly. Testing is not just following the document and reporting the job to the people. It cannot be called as testing. It can be called as checking. Because you are working based on someones command. Remember testing is different from checking. To check you need not think much. Because your job is documented in prior. But to test, yes, you need to think more. That is why I say thinking is most important skills a testers should have.


9.      Skills and Knowledge:
There is a difference between skills and knowledge. The things that you know and haven’t practiced yet, then it is knowledge. When you have practiced then it is a skill. Following document and applying it sometimes act as knowledge. No wonder,it could be test case/ design/ test ideas. When that is made by you then it is a skill.


10.  Programming Interest:
It is not that a tester who tests manually, shouldn't need of programming skills. It is good to know how to code. Choose the platform that you want to learn and have a good idea about it. So, that you would learn how to save time and how and when to automate.


11.  Social Media Connection:
Connectivity is an important for the testers. What you have learned from people would be shared among the four walls of your organizations. But engaging in social media would help you to connect with different people across the world. This would give you a platform to showcase your identity. So, make use of social media.


12.  Blogging:
Blogging could act as another way to improve, showcase ourselves. While blogging we will focus more on writing ability. This skills would be improving gradually. We would like to share the thoughts to ours .So, this will help us to know others feedback on your thoughts. We learn more, explore more to give a better results.


13.  Faking Result:
This is what one should not have thought career. Faking result, I mean saying “YES” to what all your Lead/ Manager says which doesn’t interest you and feeling that is a wrong one. To impress someone we should not fake ourselves. Be strong on your decision that you feel is right. If you want to impress others try to do that through your work, but not directly with the people.



14.  Bug Reporting:
Bug reporting is the proof to represent you and your testing.  To know more about bug reporting refer my blog post that I have published previously. It is a crucial skill a tester should be more aware of it and should be skilled about it. You could be very good in finding bugs and you have found some interesting bugs. But if your report is not good, I think it would be tough for you to express you and your work.  I have listed few things that would be helpful while writing bug report.




Here is the link that would be good enough to understand about reporting bugs and its importance.


15.  Presentation Skills:
A presentation skill is not only that you present your work to your boss/ colleagues or with any concerned people .It is also to learn how to represent ourselves with others. Representing could be our behaviour over different reactions. Presenting would include email writing,  handling sessions, body language, pronunciations.


16.  Don’t be a Blind Believer:
Don’t solely believe on the report that you got though some tools that you are using for testing. Sometimes tools would also produce inappropriate result. So, have a cross check once before you submit the report. Don’t blindly believe others. He/she may be well known in the industry. But it doesn’t mean that whatever they say will be correct at all times.


17.  Learn and Test:
Learn and test would be preferably suited for the people who know what testing is. People who depend only upon domain skills rather than testing skills may not follow this “learn and test” ideology all times.


18.  Follow People
Follow the people whose work interests you. If possible ask them to coach you. Learn from them and apply it in your own style. It is good to have a good coach for a better guidance in your career.


19.   Attending Conferences:
There are lots of conferences going on in many cities. So, attend the conference that you prefer it would be helpful for you to learn something new or better. At least be aware of conference that are happening in your places.


20.  Keep Practicing:
To me there is no term called an “Expert”. So, don’t have the mindset that you know many things or I am much experienced in something. The people whose names are most familiar in the world doesn't mean that they are experts, they are practicing and they don’t have the mindset of stop learning. They don’t say themselves as an expert because they know the meaning for it.


21.   Reading Books/Article:
You should have the passion to read books, articles of some great testers. It doesn’t mean that reading books/articles will help you to learn something related to testing Even a story books of some great leaders will help you to learn things that would  greatly helpful for your testing work. Here are the links of some article/books


            http://99tests.com/
            www.codecademy.com/‎
            http://testertested.blogspot.in/
            http://www.satisfice.com/
            http://www.testingcircus.com/
            http://chroniclesoftesting.blogspot.in/
            http://curioustester.blogspot.in/
            http://tuppad.com/blog/
            http://www.ministryoftesting.com
            
            


            1.Lessons learnt in software testing. - James Marcus Bach
            2.Are your lights on?- Don Gause ,Gerald M Weinberg
            3.Thinking fast and slow -Daniel Kahneman
            4.Testing computer software -Cem Kaner
             



22.Interaction:                              
Interaction is most important for any professionals. you could interact with different people through social media, people in your office. This will help you to learn more from different people.


23.  Being  Honest:
Be honest in your report(bug report, status report, experience report) that you send, the words that you share.
When you fake your thoughts, no more you will have the passion to learn and your growth would slip from the ladder step by step without your knowledge. So,Be honest to yourself.


24. Certification Vs value:
To know much about certification please look into this link. I hope this will help you understand how to approach when preferring certifications.




25.Tools knowledge:
Tools are the another important source to test the product. it could give result as fast as human do. So, it is good to know the tools that are required to test based on its types. But remember it doesn’t mean that tools give the accurate result all times. It is also a software where there could be an existence of the bug. So, have a cross check over that tool. There are “N” number of tools available in the market. To pick up the best among the existing tools would be your skills. To know much about some tools here is the link


26.Updates about  latest technology:
Learn the latest release of the softwares. One should be updated that with the changes
happening in the technology.


27.Mentorship:
Mentors are the teachers. Being a starter it is good to find the person who could guide you in the best way. whom you believe that he/she would show you the right path. Yes, it is important to analyze before confirming. If the teacher is in wrong path. the follower also would move in the same. Be aware of that.


28.Setting Principles:
Have the principles of your own.and don’t have the habit of bow your head for any case. Have a principle and try to follow that and try to be a model to others


29.Research:
It depends on the interest. You could get into the research about your learning. This would help you to understand your job better and help others to know about your passion.


30.Participating events:
There are “N” number of events conducted related to software testing. It is good if you participate those events and make sure those events are worth enough to attend. The events are conducted all over the world.

31.Working on plans:
It is one of the important thing a professional should do, One should have to plan for improving his/her skills sets. The right plan would take you to the right path, if your focus is really on that plan. So plan for the day/month/year and try to follow it strictly.
If your focus is clear then your path is clear


32.Questioning :
If you look into the definition of testing that I have written, hope you understand the need of
questioning. Questioning is what a part of  testing is. You learn a lot by questioning yourself and others. It is one of the most important skill set a tester should have throughout his/her career.




You are not a Scientist, but you have to think like a scientist
You are not a Judge, but you should be good in making decision
You are not an Astrologer, but you should be able to predict the products behaviour


“YOU” are now a software tester. Yes, you should have the attributes of all these and more.


     
I sincerely thank "Jyothi Rangaiah" for her supporting hands.



Thank you






Your feedbacks are most welcome



My Contact Details:


E-mail: ktg.pradeep@gmail.com
Phone: 07639959901
Skype: pradeep.lingan