¿Cuál es una buena medida de prueba / eficiencia del probador?

11

Estoy a punto de participar en una discusión con la gerencia sobre la medición de la eficiencia de nuestras pruebas como organización de control de calidad. La razón principal detrás de esto es que la mitad de nuestro equipo está contratado y nuestro negocio desea proporcionar algunas métricas de cuán efectivos / eficientes somos, para que tengamos datos básicos sobre los que negociar los parámetros del contrato con el acuerdo de servicio de nuestros contratistas. .

He examinado un poco y la mayor parte de la opinión que he encontrado sobre este tema gira en torno a la eficiencia del desarrollador: líneas de código, puntos de historia entregados, defectos introducidos, etc.

¿Pero qué hay de los probadores? Nuestras pruebas se basan principalmente en requisitos y una combinación de pruebas manuales, semiautomáticas y automatizadas (no porque no hayamos podido automatizar todo, sino porque algunas cosas no son automatizables en nuestro sistema de prueba).

Cachondo
fuente
1
stevemcconnell.com/ieeesoftware/bp09.htm podría ser útil de alguna manera.
Esto es extraño. Si tiene que probar gmail.com y no puede encontrar un solo defecto, ¿cree que falló? Si escribe un millón de casos de prueba para algo muy insignificante, ¿cree que lo hace exitoso? Busque la fuga de defectos, que significa los defectos que no se identificaron durante SIT y se deslizaron a través de UAT. Hay otras formas en que QA agrega valor al SDLC general.

Respuestas:

8

El número de pruebas escritas es inútil, y una gran cantidad de errores encontrados puede ser una medida de desarrollo deficiente en lugar de un control de calidad eficiente.

Las medidas de automatización (cobertura de código, cobertura de características ...) pueden ser buenas, pero creo que son más útiles para el desarrollo (como desarrollador, sabré si rompo algo accidentalmente) que los clientes (quiero hacer eso y no funciona)

Dado que la calidad es buena si los clientes no encuentran problemas, una buena medida de la efectividad (no la eficiencia) de un equipo y proceso de QA es la medida de los errores encontrados por los clientes que QA no ha encontrado .

El principal problema con esa métrica es que puede haber un retraso considerable entre el trabajo realizado y cuando comienza a tener números significativos.

ptyx
fuente
1
+1 en última instancia, la satisfacción del cliente es la métrica principal para todo el equipo
jk.
6

Hay algunas métricas que utilizamos en mi último trabajo para evaluar el control de calidad:

  • Número de errores encontrados. Odio este Es como "Número de líneas de código escritas" para un desarrollador.
  • Número de casos de prueba automatizados producidos.
  • Porcentaje de la aplicación total cubierta en pruebas funcionales.
  • Número de errores encontrados en la puesta en escena frente a la producción.

Al final, el trabajo de su equipo de control de calidad es encontrar los errores antes de que salgan a la naturaleza. Sus métricas deben basarse en lograr realmente ese objetivo. Si hay una baja cobertura de casos de prueba, una cantidad mínima de pruebas automatizadas y una alta tasa de errores en la producción, entonces no están haciendo un buen trabajo. Sin embargo, si tienen un buen historial de encontrar los errores mucho antes de que golpeen la producción, sus métricas deberían ser bastante altas.

Tyanna
fuente
3
Solo una observación: las tres primeras son métricas de gestión, lo que significa que el gerente del contratista debe tratar de optimizar eso en el corto plazo (mensual o trimestralmente). Sin embargo, solo el cuarto tiene consecuencias comerciales reales y debe usarse como única base para la renovación del contrato. (Un mal administrador puede obtener un puntaje muy bueno en las tres primeras métricas al inflar los números, pero aún así dejar que se filtren muchos errores al público). Desafortunadamente, el 4to tiene un ciclo de recolección de datos de 2-3 años.
rwong
las pruebas funcionales deberían ser pruebas de caja negra , ¿o me equivoco?
B 20овић
"Número de error encontrado": debe ser una medida aplicada al desarrollador. Además, si como probador me someto a este indicador, pronto me haré amigo de un desarrollador dispuesto a introducir errores en el código que pruebo.
Mouviciel
3

El control de calidad debe medirse mediante dos métricas principales: ¿cuántos errores superan el control de calidad que se encuentra en el campo? ¿Cuáles son su gravedad?

Es posible que pueda activar el control de calidad para encontrar errores graves más cerca del lanzamiento que dev-complete. Es posible que pueda eliminar el control de calidad por no completar las pruebas en su fecha de finalización estimada (por función).

Aunque al final, me temo que gastarás más dinero tratando de medir la efectividad de tu personal contratado que los ahorros obtenidos al usar un personal contratado ...

Telastyn
fuente
0

La empresa en la que trabajo utiliza una serie de métricas de control de calidad.

El que creo que es más relevante es la cobertura del código. Una herramienta como EMMA funciona muy bien, ya que escriben pruebas automatizadas exhaustivas además de sus pruebas manuales.

Hagas lo que hagas, no te concentres en la cantidad de pruebas. Eso es casi tan útil como LOC por día.

Christopher Lates
fuente
-1

Muchas formas de medir el rendimiento en las fases de desarrollo y prueba durante la ejecución del proyecto. Usamos las siguientes medidas en nuestros proyectos. Rendimiento de desarrollo medido por 4 métricas de código populares (índice de mantenimiento, complejidad ciclométrica, profundidad de herencia, acoplamientos de clase). Para C # lo conseguiremos en Microsoft Visual Studio. Para la cobertura de prueba, Ncover / Ndepend es muy útil. Rendimiento de prueba medido por ninguno de los errores de desarrollo: despliegue por los últimos 4 sprints. Errores de prueba del sistema que pasan por los últimos 4 sprints. No de la prueba de automatización aprobada en la versión particular / Características entregadas.

Balasubramanian.S
fuente