Funktionstests können in spezifische Tests unterteilt werden, die verschiedene Anwendungsaspekte abdecken. Zu diesen Tests gehören:
Unit-Tests: Die Ingenieure testen die einzelnen Komponenten der Anwendung separat.
Smoke-Tests: Hierbei handelt es sich um Tests, mit denen überprüft wird, ob die kritischen Funktionen der Anwendung ordnungsgemäß funktionieren.
Sanity-Tests: Entwickler verwenden diesen Test, um zu prüfen, ob kleinere Änderungen am Build zu neuen Fehlern geführt haben. Sie konzentrieren sich oft auf bestimmte Funktionalitäten.
Integrationstests: Bei diesem Test wird geprüft, wie die Anwendungskomponenten bei der Interaktion miteinander funktionieren. Integrationstests sind in der Regel automatisiert.
Regressionstests: Dabei werden alle Funktionen der Anwendung nach Änderungen im Code, Fehlerbehebungen, neuen Funktionen und Aktualisierungen analysiert. Sie sind umfassender und tiefgreifender als Sanity-Tests.
Benutzerakzeptanztests: Dies ist die letzte Phase des Softwaretestprozesses, in der die Benutzer der Anwendung sicherstellen, dass sie mit realen Szenarien umgehen können und alle Anforderungen erfüllen.