Common Misconceptions About Software Testing

This article was developed from concepts in the book Global Software Test Automation: Discussion of Software Testing for Executives.

Article Synopsis

There are many misconceptions about Software Testing. This article deals with the 5 most common misconceptions about how Software Testing differs from other testing.

Five Common Misconceptions

Some of the most common misconceptions about Software Testing relate to how Software Testing differs from other testing. Following is a discussion of the 5 most common misconceptions about Software Testing:

  1. You can completely test the system. If you stop to think about the enormity of accomplishing such a task, you will quickly come to realize that it is not possible to completely test any complex software system. First you start with the complexity of the software under test. Layer upon this the complexity of the numerous combinations of data and user input. Add to this the complexity of the countless combinations of computer hardware, system software, network software, and other software that may be running with the software under test. Taking all of that into consideration, it is easy to see that the task of “completely” testing software cannot be accomplished in a reasonable amount of time. It is more important to think in terms of sufficiently testing the software, focusing on critical functions, data paths, most-used functionality, on most commonly used platforms.
  2. You can have “zero defect” or bug-free software. Perfection is an approachable but not an achievable goal. Given that there is simply not enough time and money to test everything, the goal must be to test well enough to deliver acceptable software quality. It is also important to remember that no matter how good a job you do eliminating defects, your software runs in an operating environment (operating system, device drivers, other software, networking software, and environment) that has bugs of its own over which you have no control. These bugs in the environment can cause problems for your software.
  3. Software Testing is exclusively a quality control activity. Software Testing is more than simply a quality control (QC) activity. It is also a quality assurance (QA) activity and part of the overall development process. Quality control refers to measurement or inspection activities that are intended to compare actual results with the expected results of a project. Software Testing goes beyond this. It is a process of exploration in which there is an iterative evolving process of test design, execution, and problem identification. Software Testing also takes into account the needs of the customer, which QC rarely does.
  4. Software testing slows us down. Product release schedules are very much driven by a focus on time-to-market. This places an extreme pressure on the speed of development. To help to deal with this there have been great advances in software development platforms and tools that significantly accelerate the development process. In addition, software development methodologies such as Agile and Extreme Programming help to speed up software development. However, traditional testing has not kept pace with these advances, and has not experienced a corresponding increase in speed. This leads to the perception that testing slows us down, as it has not sped up as the development process has. Simply squeezing Software Testing to meet delivery schedules is not an adequate answer to this problem. This can result in delivering poor quality software with many defects that can lead to numerous unforeseen and uncontrollable costs in time and money. It is more important to address the issue by first accepting that testing is an important part of the process that takes a certain amount of time, time that must be built into the schedule. It is also important to investigate and adopt testing strategies and methodologies such as Action-Based Testing and global Test Automation (the integration of the latest Test Automation methodologies and technologies with global resource strategies) that help to speed up testing while improving test coverage.
  5. Software Testing is software development. While Software Testing is part of the overall software development process, it is actually a very separate and discrete activity. While it is common to use the terms “software development,” “software design,” and “programming” interchangeably, it is not common to say “software development” when you mean “Software Testing.” The two tasks are viewed differently. Just as a Marketing group spends money so that the Sales group can earn money, Software Testing is necessary to software development. Software development results in the generation of an eventual product, which in turn will generate revenue. Software Testing, however, is an activity in which problems in the product under development are brought to light. Testing is a process of trying to break in order to fix so that the organization may avoid significant costs in time and money after the product is released.
Hung Nguyen

Hung Nguyen co-founded LogiGear in 1994, and is responsible for the company’s strategic direction and executive business management. His passion and relentless focus on execution and results has been the driver for the company’s innovative approach to software testing, test automation, testing tool solutions and testing education programs.

Hung is co-author of the top-selling book in the software testing field, “Testing Computer Software,” (Wiley, 2nd ed. 1993) and other publications including, “Testing Applications on the Web,” (Wiley, 1st ed. 2001, 2nd ed. 2003), and “Global Software Test Automation,” (HappyAbout Publishing, 2006). His experience prior to LogiGear includes leadership roles in software development, quality, product and business management at Spinnaker, PowerUp, Electronic Arts and Palm Computing.

Hung holds a Bachelor of Science in Quality Assurance from Cogswell Polytechnical College, and completed a Stanford Graduate School of Business Executive Program.

Rob Pirozzi

Over 20 years of sales, marketing, management, and technology experience in high technology with exposure to industries including financial services, healthcare, higher education, government, and manufacturing; demonstrating a strong track record of success. Proven ability to build and maintain strong relationships, contribute to target organization success, and deliver results. Website: http://www.robpirozzi.com/

Hung Q. Nguyen
Hung Nguyen co-founded LogiGear in 1994, and is responsible for the company’s strategic direction and executive business management. His passion and relentless focus on execution and results has been the driver for the company’s innovative approach to software testing, test automation, testing tool solutions and testing education programs. Hung is co-author of the top-selling book in the software testing field, “Testing Computer Software,” (Wiley, 2nd ed. 1993) and other publications including, “Testing Applications on the Web,” (Wiley, 1st ed. 2001, 2nd ed. 2003), and “Global Software Test Automation,” (HappyAbout Publishing, 2006). His experience prior to LogiGear includes leadership roles in software development, quality, product and business management at Spinnaker, PowerUp, Electronic Arts and Palm Computing. Hung holds a Bachelor of Science in Quality Assurance from Cogswell Polytechnical College, and completed a Stanford Graduate School of Business Executive Program.
Hung Q. Nguyen on Linkedin
Rob Pirozzi
Over 20 years of sales, marketing, management, and technology experience in high technology with exposure to industries including financial services, healthcare, higher education, government, and manufacturing; demonstrating a strong track record of success.

The Related Post

Introduction Keyword-driven testing is a software testing technique that separates much of the programming work of test automation from the actual test design. This allows tests to be developed earlier and makes the tests easier to maintain. Some key concepts in keyword driven testing include:
Test organizations continue to undergo rapid transformation as demands grow for testing efficiencies. Functional test automation is often seen as a way to increase the overall efficiency of functional and system tests. How can a test organization stage itself for functional test automation before an investment in test automation has even been made? Further, how ...
Please note: This article was adapted from a blog posting in Karen N. Johnson’s blog on July 24, 2007. Introduction The password field is one data entry field that needs special attention when testing an application. The password field can be important (since accessing someone’s account can start a security leak), testers should spend more ...
Introduction Software Testing 3.0 is a strategic end-to-end framework for change based upon a strategy to drive testing activities, tool selection, and people development that finally delivers on the promise of software testing. For more details on the evolution of software testing and Software Testing 3.0 see: Software Testing 3.0: Delivering on the Promise of ...
March Issue 2019: Leading the Charge with Better Test Methods
MARCH 2016_ TEST DESIGN ISSUE
Training has to be fun. Simple as that. To inspire changed behaviors and adoption of new practices, training has to be interesting, motivating, stimulating and challenging. Training also has to be engaging enough to maintain interest, as trainers today are forced to compete with handheld mobile devices, interruptions from texting, email distractions, and people who think they ...
One of the most dreaded kinds of bugs are the ones caused by fixes of other bugs or by code changes due to feature requests. I like to call these the ‘bonus bugs,’ since they come on top on the bug load you already have to deal with. Bonus bugs are the major rationale for ...
Differences in interpretation of requirements and specifications by programmers and testers is a common source of bugs. For many, perhaps most, development teams the terms requirement and specification are used interchangeably with no detrimental effect. In everyday development conversations the terms are used synonymously, one is as likely to mean the “spec” as the “requirements.”
With complex software systems, you can never test all of the functionality in all of the conditions that your customers will see. Start with this as a fact: You will never test enough! Step 2 in getting started is to read and re-read The Art of Software Testing by Glenford Myers. This classic will set the ...
Let’s look at a few distinctions between the two process improvement practices that make all the difference in their usefulness for making projects and job situations better! An extreme way to look at the goals of these practices is: what makes your work easier (retrospective) versus what did someone else decide is best practice (post-mortem)? ...
LogiGear Magazine March Testing Essentials Issue 2017

Leave a Reply

Your email address will not be published.

Stay in the loop with the lastest
software testing news

Subscribe