Orthogonal array testing is a systematic and statistically-driven black-box testing technique employed in the field of software testing.[1][2] This method is particularly valuable in scenarios where the number of inputs to a system is substantial enough to make exhaustive testing impractical.


Orthogonal array testing works on the premise of selecting a subset of test cases from a large pool of potential inputs. This selection is based on statistical methods to ensure that the chosen subset represents the whole input space. As a result, serious bugs can be identified while the number of tests necessary to do so is greatly reduced.




Principle of Orthogonality

Orthogonal array testing works based on something called orthogonal arrays.[3] These are organized lists of different factors. When we use them, we make sure that the results we get from each factor are not connected or related. This means each test gives us new and unique information. This way of organizing inputs helps us avoid repeating tests and get the same info with the least number of experiments.

Orthogonal vector

The concept of orthogonal vectors in orthogonal arrays is fundamental to understanding orthogonal array testing. Orthogonal vectors possess key properties:


  1. ^ Pressman, Roger S. (2005). Software engineering: a practitioner's approach. McGraw-Hill series in computer science (6th ed.). Boston: McGraw-Hill. ISBN 978-0-07-285318-6.
  2. ^ Phadke, Madhav S.; Phadke, Kedar M. (January 2014). "Utilizing design of experiments to reduce IT system testing cost". 2014 Reliability and Maintainability Symposium. IEEE. pp. 1–6. doi:10.1109/rams.2014.6798451. ISBN 978-1-4799-2848-4. S2CID 8081137.
  3. ^ "What is Orthogonal Array Testing? (Example)". www.guru99.com. 2023-09-30. Retrieved 2023-10-05.