Estoy escribiendo pruebas para un proyecto que consta de varios submódulos. Cada caso de prueba que he escrito se ejecuta de forma independiente y borro todos los datos entre las pruebas.
Aunque las pruebas se ejecutan de forma independiente, estoy considerando hacer cumplir una orden de ejecución, ya que algunos casos requieren más de un submódulo. Por ejemplo, un submódulo está generando datos, y otro está ejecutando consultas en los datos. Si el submódulo que genera los datos contiene un error, la prueba para el submódulo de consulta también fallará, incluso si el submódulo funciona bien.
No puedo trabajar con datos ficticios, ya que la funcionalidad principal que estoy probando es la conexión a un servidor remoto de caja negra, que solo obtiene los datos del primer submódulo.
En este caso, ¿está bien imponer una orden de ejecución para las pruebas o es una mala práctica? Siento que hay un olor en esta configuración, pero no puedo encontrar una mejor manera de evitarlo.
editar: la pregunta es de ¿Cómo estructurar las pruebas donde una prueba es la configuración de otra prueba? como "anterior" test no es una configuración, pero prueba el código que realiza la configuración.