Las pruebas pueden realizarse en distintos niveles.
La pirámide de pruebas ilustra la relación entre la cantidad de pruebas y el esfuerzo necesario para crearlas.
Las pruebas unitarias son las más simples y numerosas. Normalmente las escriben los desarrolladores mientras implementan una funcionalidad (detalles).
El objetivo de las pruebas unitarias es verificar la corrección de módulos (funciones, clases) de forma aislada y detectar defectos temprano en el desarrollo.