• +372 880 1308 – Estonia
  • info@etestware.com
  • Working with your IT Teams to deliver
eTestware eTestware
Contact Us
  • About Us
  • Right Sourcing
  • Careers
  • Blog
Testing Pareto Principle
  • 24 September 2020
  • Asa Sargeant
  • 0 Comments

7 Principles of testing

One of the most crucial elements of software development is testing, which can be extremely difficult to structure correctly so as to ensure maximum efficiency. As a result, it is always worth going back over your processes and methodology to check that best practice is being adhered to, something the team at eTestware regularly do. A good starting point in this is to revisit the International Software Testing Qualifications Board (ISTQB) and their list of the seven principles of testing…

  1. Testing shows the presence of defects, not their absence

The objective for a testing team must be to confirm that the product or application under test can function to meet the needs of the end user and stands up to business requirements – it is not to prove that it is defect or error free, because in the software testing industry, it is accepted that this is virtually impossible.

Instead, a wide variety of testing types and different methodologies are deployed to continuously search for and reveal hidden defects.

  • Exhaustive testing is impossible

It is a simple fact that exhaustive testing would literally take an unlimited amount of effort, effort that would prove to be highly ineffective and which would doubtless fall outside of the project timeline. Instead, different techniques are prioritised and then used to test specific combinations, thus ensuring the optimal amount of testing based on the risk assessment of what is being tested.

One of the most important skills a testing expert possesses is the ability to identify the most important functions to test.

  • Early testing saves time and money

The testing process should begin at the earliest stage possible, so that any defects or errors are detected as soon as possible – simply put, by starting quickly you can limit the amount of issues discovered during the later stages of testing, thus saving money.

What is the earliest stage possible? Generally speaking, you should make a start once the requirements of the test have been defined.

  • Defects cluster together

During testing, it might be that the majority of defects discovered are related to a small number of modules. These modules might be particularly complex, or they could feature legacy code but whatever the reason, this is essentially the software testing world’s version of the Pareto Principle – i.e., 80% of the defects will be found within 20% of the modules being tested.

Knowing about these modules can be very useful for testers, as they can then concentrate their efforts on these critical areas.

  • Beware of the pesticide paradox

This is a principle stating that if the same set of tests are executed repeatedly, they will eventually be unable to reveal new defects. It is based upon the theory that when crops are continually exposed to pesticides, insects eventually build an immunity to it, and to combat it testers must ensure that they constantly review and revise their test cases.

Experienced testing teams will usually vary their techniques and approach, adding new modifications and scenarios to ensure the maximum efficiency.

  • Testing is context dependent

Testing is very much dependent upon context, as the test ‘subject’ will require a specific type of approach; for example, an application designed for use in the cruise industry will be quite different to one in the insurance industry.

  • Absence-of-errors is a fallacy

It is possible that software which has been tested and found to be 99% bug-free can still be unusable, this often due to the system being tested for the wrong requirement. As we saw in the very first principle, testing is not only about identifying errors or defects but it is also used to assess whether or not the business needs are being met. Discovering and rectifying these errors is virtually useless if the system does not fulfil the requirements of the end user.

As part of theICEway ecosystem of companies, we are proud to work alongside clients from cruise & travel and healthcare, sharing our software testing knowledge and experiences with their own teams in a collaborative environment.

Company Socials

  • Privacy Policy for eTestware
  • Free Articles

    Copyright © 2018 eTestware OÜ | All Rights Reserved | Company Registration Number: 12485623
    This website stores cookies on your computer. These cookies are used to collect information about how you interact with our website and allow us to remember you. We use this information in order to improve and customize your browsing experience and for analytics and metrics about our visitors both on this website and other media. To find out more about the cookies we use, see or Privacy Policy. If you decline, your information won't be tracked when you visit this website. A single cookie will used in your browser to remember your preference not to be tracked.AcceptDecline