¿Debo escribir pruebas unitarias para expresiones regulares complejas en mi aplicación?
- Por un lado: son fáciles de probar porque el formato de entrada y salida a menudo es simple y bien definido, y a menudo pueden volverse tan complejos que las pruebas de ellos específicamente son valiosas.
- Por otro lado: ellos mismos rara vez forman parte de la interfaz de alguna unidad. Sería mejor probar solo la interfaz y hacerlo de una manera que implícitamente pruebe las expresiones regulares.
EDITAR:
Estoy de acuerdo con Doc Brown, quien en su comentario señala que este es un caso especial de pruebas unitarias de componentes internos .
Pero como los componentes internos regexes tienen algunas características especiales:
- Una expresión regular de una sola línea puede ser realmente compleja sin ser realmente un módulo separado.
- Las expresiones regulares asignan la entrada a la salida sin ningún efecto secundario y, por lo tanto, son realmente fáciles de probar por separado.