Before you proceed reading this post, please take a piece of paper or a notepad and write down what you mean by "negative testing".
Are you done with it?
I spent time investigating what many Indian testers say about "negative testing" by browsing online forums, google search and I also sought help from testers who were online in my buddy list. What you read below till you see a "Meep" are views of testers who responded to me over IM when I asked them - What do you mean by "negative testing"? or When someone says "negative testing", what occurs to you? or What do you think about "negative testing"?
"I infer that some of the people are trying hit on negative tests (the probality of user acting the same is very less) o begin with"
"Testing carried out to test expected behaviour from product by providing wrong (negative) inputs "
"A negative test would be the program not delivering an error when it should or delivering an error when it should not. Negative Testing = (Showing error when not supposed to) + (Not showing error when supposed to)"
"there is nothing called as negative testing.. but there is something called negative test case or test idea.."
"Negative testing is that testing which attempts to show that the application does not do anything that it is not supposed to do"
" input which do not lie in valid domain"
"any testing carried out by passing non reccomded values with an aim of breaking down the application is called negative testing"
"if a developer designed a edit box to accept only numerics and length of 10 nos and if it accepts alphabets which we enter if it accepts either than numerics is negative testing"
"negative testing is checking for scenarios which are not smooth path.."
"Testing aimed at showing software does not work. Also known as "test to fail".in simpl ewords"
"negative testing is something you know tht the values wont support but u need to test it.."
"negative testing for me will be done after validating the postive test cases first"
Look this is an interesting one - "as far i am concerned..i belive there is noting called -ve testing."
I am happy that Debasis and Venkat Reddy asked about contexts before they came out with their answers.
I found a lot more definitions by individuals in online discussion forums and orkut communities about what people had to say about negative testing and it's a similar experience to what you have read above. If you are interested Google it up and have fun!
Thinking critical, I conjecture that testers to my knowledge are using the term "negative testing" as a guide word heuristic. They are happy of using it because they found bugs with it, be it whatever they did assuming that they were doing "negative testing".
So doing something that could find bugs is more important than what meaning one has for the technique he is using to test ( in the context of this discussion) BUT testing in a skilled way is more important than just doing it. The problem comes when you have to describe what you did to others, especially when they question the techniques you used. A "stress" test to you might be a "load" test to someone - How would you communicate yourself effectively being in a land of confused terms?
After I wrote the above sentence, I leaned back on my chair for a while and thought the following -
"Negative testing" might have different meanings in different different contexts and the following list are my assumptions of the scenarios where I might have done or might do negative testing -
- If I find a bug but did not report it, which later turned out to be a critical issue, I did negative testing.
- If I fail to observe a bug that passed away the screen, which could have been caught if I had practiced my observatory skills, I did negative testing.
- If I do not learn the product or technology during test execution, I did negative testing.
- If I do not run cost v/s value in mind and end up doing an expensive test away from the mission, I did negative testing.
- If I failed to ask questions before accepting the mission or jumping to test, I did negative testing.
- If I blindly follow the specification document, believing it's a bible, I did negative testing.
- If I am into automation testing just because my friends said "Manual testing has no future" without realizing that automation testing also involves manual activity, I did negative testing.
- If I manipulate the metrics, without realizing the impact of it on reputation of the company and myself, I did negative testing.
- If I freeze my test plan and never bother to change it despite the daily dynamics, I did negative testing.
- If I mess up my relationships with developers, without realizing the fact that developers are great resource of information for testing, I did negative testing.
- If I stopped learning or practicing testing skills, I did negative testing.
- If I spend most of the time in orkut and online groups asking questions about how I could solve my day to day problems with subject "Urgent - Need help", I did negative testing.
- If I list everything that I have in mind about this topic giving less room for you as a tester to think about this, I did negative testing.
Some testers expressed shock when I said to them that I don't know what negative testing actually means. It's very important to say "I don't know", in my opinion when we really don't know something being asked. How long has it been since you said, "I don't know"?
I recently faced a question from someone who claimed to be my friend but isn't happy of my growth in testing field, "Are you a humble person, Pradeep?".. I said, "I don't know" and he replied, "Well, this answer itself says, you are not". I had to laugh at three things - the situation, myself and then my dear friend.
Not knowing a good enough definition that suits your context while applying it, is a negative thing to happen to the project you are working or for people who are tasking you. When you do negative testing with already a negative happening, you might be finding bugs because the resultant is always positive, mathematically. Ah! That's my imagination and I could be wrong.
I am open to more ideas on this but if you put the comments in a negative way, I might have to make the resultant positive ;-)
Testing in my opinion, should not be classified as positive and negative, it isn't electricity but still someone has done the damage by misunderstanding someone else. I don't know what I did with this post!
-- Pradeep Soundararajan -
"Pradeep's first language is not English--his first language appears to be testing." -- Michael Bolton