0% found this document useful (0 votes)
130 views5 pages

Software Testing Myths

The document discusses several common myths and misconceptions around software testing. It explains that while testing is important to ensure quality, it alone does not improve quality and requires collaboration across the software development lifecycle. It also addresses myths around testing being easy work, not offering career growth opportunities, and not requiring formal training. The conclusion is that testing requires a certain personality and mindset to be effective, and that both testing and development roles are important to the process.

Uploaded by

shine_brightsun
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
130 views5 pages

Software Testing Myths

The document discusses several common myths and misconceptions around software testing. It explains that while testing is important to ensure quality, it alone does not improve quality and requires collaboration across the software development lifecycle. It also addresses myths around testing being easy work, not offering career growth opportunities, and not requiring formal training. The conclusion is that testing requires a certain personality and mindset to be effective, and that both testing and development roles are important to the process.

Uploaded by

shine_brightsun
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Software Testing Myths

Software implementation is a cozy bonfire, warm, bright, a bustle of comforting concreteactivity. But beyond the flames is an immense zone of darkness. Testing is the explorationof this darkness . - extracted from the 1992 Software Maintenance Technology Reference Guide
Testing is often considered as a thankless job. While developers say with pride: "Wow!! My code is running in production", testers usually dont say "Wow!! The code that I tested is running in production"!!! This attitude can also be justified if we consider some examples of the usual talk that goes on among colleagues/peers/friends in the IT circle, like: Mr. A: Which project are you working on? Mr. B (Tester): Currently. I'm in a Testing project. Mr. A: Oh...Umm...OK... Mr. A: Mr. C, how about you? Mr. C (Programmer/Developer): A Development & Maintenance project Mr. A: Oohh?? What technology? Which platform? Whats the project all about?? And so on Even though there's no denying the fact that Construction/Coding is a very significant phasein the life cycle of any software product, the role of Testing as an activity should be given itsdue importance, because of the main reason, among others, that its the phase of SDLC justbefore a software product goes to production; i.e.; when your software product/applicationactually starts functioning in real world. Therefore, its the only phase where you can ensure & gain a reasonable level of confidence that that you are delivering quality products to the customer. This does not mean that quality assurance starts in the Testing phase. Ensuring & maintaining quality is a continuous process, which should be, practiced right from Day 1 of the SDLC cycle. In other words, during testing phase, you can "bang" your product in different ways, by which I refer to different kinds of testing like functional testing, stress testing, performance testing & so on, and validate whether the software product works fine. Needless to say, delivering quality software delights customers & helps in getting more business. That said about the importance of Testing, we will now proceed to look into some perceptions or myths about software testing which prevails, in general, among the IT community Testing is done to demonstrate that there are no errors/bugs/defects in the software product being developed No. Not at all!! Though this is one way of conveying the meaning, it takes us away from the main objective of testing

Testing is the process of uncovering defects... The objective of any tester should be to try his best to crack the code. This should not be seen as a destructive activity that points fingers at or find faults with the developers. In fact, testing should be considered as a healthy feedback mechanism to the developer community so that they can make maximum use of the defects found during testing, analyze them, find the root cause & devise appropriate preventive mechanisms. Actually, the defects found during testing helps improving the quality of the code! A tester should never work under the assumption that the system works!! The software product should be tested with the intent of finding errors. The test, which when executed reveals a defect in the software, is a success. Though Testing, by itself, does not improve the quality of the software product, it is an indicator of the quality. Rather that considering Testing as a separate phase in the SDLC, it should be an activity which is integrated into each & every phase. The intent should be to Analyze & Test, Design & Test, Develop & Test, Fix Defects & Test more...!! Testing is done to ensure that the software/application does what it is supposed to do True enough!! But its not just that...The software should also not do what it is not supposed to do. Good test cases are the only way to establish a reasonable level of confidence on the software product. The Tester should think of all possible scenarios based upon the test requirements or test plan. Though there are various methods to prepare a large number of test cases like Equivalence Partioning, Boundary Value Analysis and so on, a lot depends on one's own intuition to come up with some good cases which reveals defects in the software Testing is easy...!!! Sometime back, I conducted a short class on Software Testing to a group of new recruits. While we were discussing about different type of projects, one participant said that he is very interested in a testing career. When asked the reason for his interest, prompt came the answer: Testing is very easy, thats why!! This holds good only in some situations. Though its simple to prepare straightforward test cases, at times testing can be a real challenging task. Any production issues will, in many cases, backfire first to the testing teams. Why was this scenario not covered in the test plan?? Therefore, a Tester should develop the capability to look or think beyond the requirements mentioned in the test plan or specifications. This is very important in case of System Testers who are responsible for ensuring that the software product works appropriately from "end-to-end ". Testing does not offer any opportunities for career growth. There are a wide range of roles that one can take up, if opting for a Testing career. Pursuing a testing career offers more scope for improving Business/Domain knowledge.

It enables one to adopt a holistic approach of the entire software system instead of concentrating on just a unit or module. A good number of testing certifications are offered by reputed institutes, which helps you attain a strong foundation in this career path. This does not mean that you dont have all these opportunities at all if you are a Developer.It can be said that a Testing career has its own plus points. It entirely depends on one's owninterests! Testers do not perform well in development projects (or Testers are poor in coding) Tester or not, the expertise on developing quality code depends upon one's own programming skills and constant or continuous learning in that area. Some people, though in testing projects, take time out of their work to improve their programming skills by contributing to coding efforts or taking up projects voluntarily. Thus, being a Tester does not prevent you in any way from being an expert Programmer or Vice Versa!!! One way to narrow the communication gap between Tester & Developer community is toinclude the Testing teams, right from the Requirements/Design Stage meetings so thateveryone involved in the life cycle of developing a software product can take part in thediscussion & offer valuable suggestions. This is evident from the below lines, which wonderfully describes the importance of Testing

More than the act of testing, the act of designing tests is one of the best bug preventers known. The thinking that must be done to create a useful test can discover and eliminate bugs before they are coded - indeed, test-design thinking can discover and eliminate bugs at every stage in the creation of software, from conception to specification, to design, coding and the rest. -Boris Beizer, Software Testing Techniques, "Creating a Software Engineering Culture" by Karl Eugene Wiegers"
No formal training is needed to work in a Testing project... Anyone can be a Tester! True enough, anyone can be a Tester...but, only a good Tester can come up with quality Test cases (just like how an expert Developer can write quality Code). It is essential that proper training is imparted to everyone joining Testing projects. This would not only helps one to understand the importance of Testing, but also tune one's mind to the requirements of becoming a good Tester, which would greatly contribute to a good career in Testing

CONCLUSION
These days, though the attitude towards Testing as a phase & Testing as a career has definitely undergone a sea change, still these myths are firmly entrenched in the minds of

many, among the IT professionals community. This mindset or attitude paves the way for failure even before we really start testing!

___________________________________________

So you want to be a Software Tester?


My best friend is actually one of the best software testers I have ever met. When I begantesting for her consultating company I sincerely thought I'd found the perfect job. I couldstay at home and work independently. I received my projects, I completed them and I got paid. A lot. It seemed the perfect scenario until one day I realized that I just didn't enjoy what I was doing. Testing was repetitious, often boring and I found myself dreading the receipt of each and every new project. Trish, on the other hand, was a testing maniac. She saw each and every project as a challenge and the satisfaction she gleaned from finding more bugs than any other tester was almost frightening. Even with her help and coaching, however, I just couldn't get it and finally realized that even despite the excellent pay and flexible schedule, I just wasn't cut out for the wonderful world of testing. I soon realized that like every other job, testing required a certain personality type and I just wasn't it. Consequently knowing exactly what I am not, I can tell those you who are actually considering this profession, exactly which personality traits will suit you to this industry. First of all, you have to be able to sit still for long periods of time; you need to be well organized and willing to systematically work through a project from the beginning to end. If you're easily bored or find yourself jumping from one task to another, testing will prove to be frustrating and confusing. Secondly, you've got to be just a little bit intuitive. Quite often, Trish would identify problems within a program that my mind simply could not have even considered. When I'd ask her how in the world she thought to test it that particular way, she'd simply reply, "I just knew." In the world of testing, you've got to trust your gut and in most cases, you'll find that instinctively, you knew just how a program would respond. Many other testers I've spoken with will dismiss the intuition and insist that experience makes all the difference, but quite honestly, I believe some people are just born for this job. Thirdly, you've got to be able to focus on the little windows inside the big picture and most importantly, I believe you actually have to have a secret desire to break things. The best testers I know were always taking things apart when they were children and trying to put them back together with a different result. Testing is chaotic, it's fast paced and you're often working under extreme deadlines. Communication skills are a must as you attempt to show everyone else what they've done wrong without getting them angry with you. In the good old days, testing was something that was done at the end of a project. Today, however, testing is a part of the process from the very beginning. The ability to work within

a team is essential. While automated testing is making a few waves, I find it extremely difficult to believe that it will ever replace Trish or any of the other born-to-be testers of the IT world. In fact, automation is not designed as a replacement for manual testing but rather simplysupports the skills that most testers have already developed. If you're considering softwaretesting as a possible profession, I'd highly suggest that you find a mentor. Someone who'sbeen in the business. Someone like Trish. Then spend a day with them at their computer.Borrow their project and give it a run yourself. You'll know very quickly if you're meant forthis job or not.

_________________________________________

You might also like