Алгоритмічне тестування
Алгоритмічне тестування застосовується програмістом для контролю етапів алгоритмізації та програмування. Програмісти проектують тести і починають готувати еталонні результати на етапі алгоритмізації, а використовують їх на етапі налагодження.
Функціональне або аналітичне тестування
Аналітичне тестування служить для контролю обраного методу розв'язання задачі, правильності його роботи в обраних режимах і з встановленими діапазонами даних. Тести проектують і починають готувати відразу після вибору методу, а використовують їх на останньому етапі налагодження або для аналізу результатів пробного рахунку; в ході тестування, поряд із звіркою на збіг, застосовуються і якісні оцінки результатів.
Змістовне тестування
Змістовне тестування служить для перевірки правильності постановки завдання. Для контролю при цьому використовуються, як правило, якісні оцінки та статистичні характеристики програми, фізичний зміст отриманих результатів і т.п. у проведенні змістовного тестування, принципи якого формулюються в технічному завданні, найактивнішу участь повинні брати замовники або йдуть користувачі програми. Змістовні та аналітичні тести перевіряють правильність роботи програми в цілому або великих її частин, у той час як алгоритмічні тести в першу чергу повинні перевіряти роботу окремих блоків або операторів програми.