Cómo hacer una buena prueba de software
1. Los casos de prueba son el núcleo de las pruebas de software.
La importancia de las pruebas de software está fuera de toda duda. Sin embargo, cómo completar la prueba en el menor tiempo con la menor inversión de mano de obra y recursos, descubrir los defectos del sistema de software y garantizar la excelente calidad del software es el objetivo que las empresas de software exploran y persiguen. Cada producto de software o proyecto de desarrollo de software necesita un conjunto de excelentes planes y métodos de prueba.
Hay muchos factores que afectan las pruebas de software, como la complejidad del software en sí, la calidad de los desarrolladores (incluido el personal de análisis, diseño, programación y pruebas), el uso de métodos y tecnologías de prueba, etc. . Porque algunos factores existen objetivamente y no se pueden evitar. Algunos factores son volátiles e inestables, por ejemplo, el equipo de desarrollo es fluido, las personas con experiencia se van y constantemente se agrega gente nueva, el trabajo de una persona específica también se ve afectado por las emociones, etc. ¿Cómo garantizar la estabilidad de la calidad de las pruebas de software? Con los casos de prueba, no importa quién realice las pruebas, la calidad de las pruebas se puede garantizar haciendo referencia a los casos de prueba. La influencia de los factores humanos se puede reducir al mínimo. Incluso si el caso de prueba inicial no está bien pensado, se mejorará a medida que avance la prueba y se actualice la versión del software.
Por lo tanto, el diseño y preparación de casos de prueba es lo más importante en las actividades de prueba de software. Los casos de prueba son la guía para el trabajo de prueba, las pautas que se deben seguir en las pruebas de software y la garantía fundamental para la estabilidad de la calidad de las pruebas de software.
2. ¿Qué es un caso de prueba?
El caso de prueba (TestCase) actualmente no tiene una definición clásica. El dicho más común es: se refiere a la descripción de la tarea de prueba para un producto de software específico, que refleja el plan, método, tecnología y estrategia de prueba. El contenido incluye objetivos de prueba, entorno de prueba, datos de entrada, pasos de prueba y resultados esperados. , scripts de prueba, etc., y formar un documento.
Las diferentes categorías de software tienen diferentes casos de prueba. A diferencia del software como sistemas, herramientas, controles y juegos, las necesidades de los usuarios del software de gestión son más inconsistentes y cambian más rápidamente. El autor se dedica principalmente a probar software de gestión empresarial. Por lo tanto, nuestro enfoque es separar los datos de prueba y los scripts de prueba de los casos de prueba. Los casos de prueba tienden a ser planes de prueba diseñados para las funciones, reglas comerciales y procesamiento comercial de productos de software. La prueba de cada función específica o ruta de operación del software constituye un caso de prueba.
3. Escritura de casos de prueba
Céntrese en algunos métodos específicos de escritura de casos de prueba.
1. Documento de caso de prueba
La redacción de documentos de caso de prueba debe tener plantillas de documentos y debe cumplir con las especificaciones internas. La documentación del caso de prueba estará sujeta a las limitaciones del software de gestión de casos de prueba.
Los casos de prueba de un producto de software o proyecto de desarrollo de software generalmente se basan en los módulos o subsistemas de software del producto, formando un documento de caso de prueba, pero esto no es absoluto.
El documento de caso de prueba consta de dos partes: introducción y casos de prueba. La sección de introducción recopila el propósito de la prueba, el alcance de la prueba, los términos definidos, los documentos de referencia, la descripción general, etc. La sección de casos de prueba enumera cada caso de prueba uno por uno. Cada caso de prueba específico incluirá la siguiente información detallada: número de caso de uso, nombre del caso de uso, nivel de prueba, criterios de entrada, pasos de verificación, resultados esperados (incluidos criterios de evaluación), criterios de salida, comentarios, etc. El contenido anterior cubre los elementos básicos de los casos de prueba: índice de prueba, entorno de prueba, entrada de prueba, operación de prueba, resultados esperados y criterios de evaluación.
2. Configuración de casos de prueba
Nuestros primeros casos de prueba se configuraron por función. Posteriormente, se introdujo el método de análisis de rutas para establecer casos de uso según las rutas. Ha evolucionado hasta establecer casos de uso por función y modo mixto de ruta.
3. La prueba por función es la más sencilla y prueba de forma iterativa cada función según la especificación del caso de uso.
Para módulos de programas operativos complejos, la implementación de cada función se afecta entre sí, está estrechamente relacionada y entrelazada, y puede evolucionar hacia una gran cantidad de cambios. Sin un análisis lógico estricto, las omisiones son inevitables. El análisis de ruta es un buen método y su mayor ventaja es que puede evitar omitir pruebas.
Para mejorar la eficiencia de las pruebas, las pruebas de software han desarrollado vigorosamente las pruebas automáticas. La tarea central de las pruebas automatizadas es escribir guiones de prueba. Si la programación de software en ingeniería de software debe tener una especificación de diseño, entonces la especificación de diseño del script de prueba es el caso de prueba.
4. Puntos de referencia métricos para evaluar los resultados de las pruebas
Después de completar la implementación de la prueba, es necesario evaluar los resultados de la prueba y preparar un informe de prueba. Juzgar si las pruebas de software se han completado y medir la calidad de las pruebas requieren algunos resultados cuantitativos. Por ejemplo: cuál es la cobertura de la prueba, cuál es la tasa de aprobación de la prueba, cuál es la tasa de aprobación de la prueba importante, etc. En el pasado, los puntos de referencia estadísticos eran módulos de software o puntos de función, lo que parecía demasiado aproximado. Usar casos de prueba como puntos de referencia de medición es más preciso y efectivo.
5. Criterios para analizar defectos
Al recopilar defectos, comparar casos de prueba y bases de datos de defectos, se realiza un análisis y confirmación de si se omitieron pruebas o si los defectos son recurrentes. Las pruebas faltantes reflejan la imperfección de los casos de prueba, y los casos de prueba correspondientes deben complementarse de inmediato para, en última instancia, mejorar gradualmente la calidad del software. Si hay casos de prueba correspondientes, refleja problemas en la implementación de pruebas o procesamiento de cambios.
5. Cuestiones relacionadas
1. Revisión de casos de prueba
Los casos de prueba son los criterios para las pruebas de software, pero no se convierten en criterios una vez compilados. Durante el proceso de diseño y preparación de casos de prueba, se debe organizar una revisión por pares. Una vez completada la preparación, se debe organizar una revisión de expertos y solo se podrá utilizar después de aprobarla. El comité de revisión puede estar compuesto por líderes de proyecto, pruebas, programación, análisis y diseño y otro personal relevante, y también se puede invitar a participar a representantes de los clientes.
2. Modificación y actualización de casos de prueba
Los casos de prueba también deben mejorarse continuamente después de que estén documentados. Principalmente por tres razones: primero, durante el proceso de prueba, se descubrió que el diseño de los casos de prueba no se consideró cuidadosamente y debía mejorarse; segundo, los defectos del software se informaron después de que el software fue entregado y utilizado, y los defectos fueron causados; por lagunas en los casos de prueba; en tercer lugar, con las nuevas funciones del software en sí y las actualizaciones de la versión del software, los casos de prueba también deben modificarse y actualizarse en consecuencia.
Generalmente, se pueden realizar pequeñas modificaciones y mejoras al documento del caso de prueba original, pero el documento debe tener un registro de los cambios. Cuando se actualiza la versión del software, los casos de prueba generalmente deben compilarse y actualizarse en consecuencia.
3. Software de gestión de casos de prueba
El uso de casos de prueba también requiere un software de gestión de casos de prueba. Tiene tres funciones principales: en primer lugar, puede importar automáticamente los contenidos clave del documento del caso de prueba, como el número, el nombre, etc., a la base de datos de gestión para formar un registro que corresponda completamente al documento del caso de prueba; se puede ingresar a tiempo durante la implementación de la prueba Situación de prueba en tercer lugar, la implementación final genera automáticamente documentos de resultados de la prueba, incluido el valor de cada métrica de prueba, la tabla de cobertura de la prueba y la lista de casos de prueba de pruebas aprobadas o fallidas.
Con el software de gestión, será fácil para los evaluadores escribir registros de trabajo de prueba diarios o producir informes de prueba de software