Algorithm

An algorithm is a finite, ordered sequence of steps that transforms an input into an output.

In software testing, algorithms are the logic under test. Test techniques target algorithm behaviour through inputs (equivalence partitioning, boundary value analysis), through paths (decision tables, state transition testing), and through output verification (comparing the actual result against the expected result).