3.6.1 Testimise tasemed, põhimõisted

Testimiseks saab nimetada ka lihtsat kompileeri/käivita/paranda tsüklit, kuid testimine on tarkvara valmimise juures nõnda tähtis osa, et selle tarbeks on hulgaliselt erinevaid vahendeid ja võimalusi loodud.
Arenduskeskkondade juurde kuuluvad silurid (debugger), mille abil on võimalik programmi sammu kaupa käivitada ning iga sammu järel kontrollida süsteemi seisu - muutujate väärtusi, väljundit failidesse ja ekraanile. Samuti võimaldavad silurid käivitada programmi kuni määratud koodireani ning valida, kas sammu kaupa astudes sisenetakse ka väljakutsutavatesse alamprogrammidesse või mitte - nõnda on ka suurema rakenduse puhul võimalik jõuda sobilikku kohta ning siis lähemalt uurida, kuidas parasjagu aktiivse koodi juures süsteem töötab.
Logimiste tarbeks on loodud eraldi abivahendeid. Lihtsaim ja vanadest aegadest levinuim on töö vahetulemuste trükkimine väljundaknasse. Suuremate rakenduste puhul aga võib neid teateid olla raske jälgida. Samuti peab ettevaatlik olema, et sellised programmeerijale mõeldud vaheteated lõppkasutajat häirima ei jääks. Selle tarbeks on mõeldud ka mitmeid abivahendeid nagu näiteks konstantide defineerimine C-keeles, kuid sellegipoolest kipuvad vaheväljatrükid mõnigi kord segadust tekitama. Eri keskkondades on loodud logimiste tarbeks mitmesugused abivahendid - eri raskusastmega teadete saatmiseks logifailidesse või näiteks nende kättesaamiseks erilise aadressiga veebilehelt. Vigade raskusastmed arvutuslikest ebakõladest süsteemi tööd halvavate vigadeni.