Me encuentro ante una situación en la que quiero asegurarme de que si se modifica un método no se necesita más de X ms para ejecutarse (esencialmente si esa función es más lenta, se ralentizará los resultados de búsqueda en nuestra página web, y que tienen un mal impacto en las ventas).Tiempo de uso transcurrido como afirmación en pruebas unitarias
Tenemos pruebas unitarias (en particular, el código se realiza en python y usamos py.test), la primera idea es afirmar que si la función no se ejecutó en menos de X ms, marque la prueba como fallida (o levantar una advertencia).
Sin embargo, esto parece peligroso (no todas las computadoras tienen la misma velocidad, por ejemplo), y tampoco estoy muy seguro de que ese sea el trabajo de una prueba unitaria.
¿Alguien ha enfrentado una situación similar? Para mí, la velocidad es una característica, y quiero asegurarme de que dicha característica no se pierda en el futuro a medida que evoluciona el código.
Si las pruebas unitarias no son la respuesta, ¿qué otras alternativas recomendaría?
Gracias
Sí, hacemos un servidor de prueba dedicado, sin embargo, también alentamos a los desarrolladores a ejecutar pruebas en sus máquinas, y no quiero que crean que rompieron el lanzamiento solo porque tal vez sus máquinas están un poco cargadas. Aunque como dijiste, la repetibilidad parece una gran idea. Gracias. –