Antecedentes: estoy pensando en intentar presentar el concepto de pruebas unitarias a mis compañeros de trabajo creando algunos para un módulo en el que he estado trabajando; sus requisitos cambiaron recientemente y requieren algunas abstracciones / interacciones más, por lo que parece una buena forma de desarrollar un conjunto de pruebas que "probarán" que funciona sin tener que buscar manualmente la aplicación.
El problema, sin embargo, es que el módulo se basa en factores externos indescifrables, a saber, PDF y XSL. Básicamente leo XML de la base de datos y le aplico una transformación XSL, luego lo convierto a PDF usando una biblioteca llamada ABCPDF. Este PDF se fusiona con otro PDF basado en una plantilla estática. Sé que puedo probar el XML y asegurarme de que los valores son correctos, pero muchos de los posibles errores y problemas están relacionados con la visualización real del documento terminado, por ejemplo, minucias como cuánto tiempo se envuelven las cadenas de texto, donde están ciertas áreas HTML. ubicado en relación con el documento, etc. ¿Es posible probar estas cosas? (Me doy cuenta de que probablemente sean pruebas de integración o ... el tercer tipo de prueba cuyo nombre olvido [no pruebas de aceptación, el otro tipo], y no la unidad pruebas) ya que no puedo, hasta donde sé, simular un PDF fácilmente antes de crearlo y luego volver a leerlo o crear una cadena HTML (es decir, XML transformado) y analizarlo a mano para verificar la presencia de ciertas celdas de tabla en relación con otras celdas de la tabla.
En una situación como esta, ¿debería centrarme en las pruebas unitarias para asegurarme de que la información es correcta y que puedo crear el PDF, o fusionarlos, o lo que sea, y recurrir a las pruebas manuales para los problemas de visualización reales?