Alla programvaruprodukter som antingen hoppade över testfasen, underpresterar eller har utrymme för förbättringar måste testas noggrant. Programvaran kan testas i alla skeden och i alla aspekter – vare sig det är funktionell, prestanda, säkerhet eller användbarhetstestning i design-, utvecklings- eller pre-release-stadiet.