2012-07-24 14 views
47

Tengo algunas dificultades para entender el arnés de prueba y los términos comunes relacionados, como el caso de prueba, los guiones de prueba en las pruebas de automatización.¿Qué es el arnés de prueba?

Así que esto es lo que obtuve hasta ahora: La prueba de automatización es el uso de un software especial (que no sea el software que se prueba) para controlar la ejecución de pruebas y comparar los resultados reales con los resultados esperados. También implica el establecimiento de precondiciones de prueba. Este tipo de prueba es la más adecuada para las pruebas que se llevan a cabo con frecuencia.

Ahora, estoy teniendo algunos problemas con el arnés de prueba. Leí que consiste en un conjunto de prueba de casos de prueba, archivos de entrada, archivos de salida y scripts de prueba. Ahora mi pregunta es ¿cuál es la diferencia entre el caso de prueba y el script de prueba? Además, ¿cómo se usa el software para probar las diferentes funciones de AUT? También encontré algunos términos como suite master y agentes de casos.

+0

Solo piense en ello como la raíz a la que recurrirá cuando quiera probar completamente su proyecto. – Pithikos

Respuesta

49

Varias preguntas generales, trataré de responder en función de mi experiencia.

Think de un Test Harness como un 'facilitador' que realmente hace todo el trabajo de (1) pruebas de ejecución usando una biblioteca de prueba (2) y (3) la generación de informes . Requeriría que sus scripts de prueba estén diseñados para manejar diferentes (0) datos de prueba y (5) escenarios de prueba. Esencialmente, cuando el arnés de prueba está en su lugar y se preparan los datos de requisitos previos (también conocido como data prep), alguien debería poder hacer clic en un botón o ejecutar un comando para ejecutar todas las pruebas y generar informes.

Un arnés de prueba es muy probablemente una colección de cosas diferentes que hacen que todo lo anterior ocurra. Si escribiste pruebas unitarias mientras desarrollas tu aplicación, eso sería parte de un arnés de prueba. También tendría otras pruebas para la funcionalidad de su aplicación, como: el usuario inicia sesión en el sitio, ve el panel de favoritos, mensajes recientes y notificaciones. A continuación, agrega un 'corredor' de tipo que recorre todos sus "scripts de prueba " y los ejecuta (en lugar de tener que ejecutar pruebas de uno en uno). Si se siente como un arnés de prueba es más una colección conceptual que una sola pieza de software, entonces está entendiendo esto correctamente :-)

Ahora mi pregunta es cuál es la diferencia entre el caso de prueba y la prueba ¿guión?

Respuesta simple, pero no del todo correcto: un caso de prueba define objetivos de la prueba, descripción, condiciones previas, las etapas (descriptivos o específicos), los resultados esperados. Un script de prueba sería el script automatizado real que ejecuta para realizar esa prueba. Eso está en un contexto de Automatización. Y cambia Mucho.

Qué certificaciones como ISTQB definen como escenarios de prueba que normalmente se conoce como casos de prueba en algunas empresas y países. En otros, los casos de prueba se invierten con scripts de prueba cuando se refieren a pruebas manuales (cuando los pasos se dan en detalle pero no forman parte de un arnés de automatización). Otros dicen que los scripts de prueba son exclusivamente pruebas automatizadas. Por otro lado, también se puede argumentar que varios casos de prueba se pueden combinar en un script de prueba y viceversa.Entonces, eso plantea la pregunta: ¿cómo encaja un procedimiento de prueba ?

Una etapa test development puede tener: "Procedimientos de prueba, escenarios de prueba, casos de prueba, conjuntos de datos de prueba, scripts de prueba para usar en software de prueba."

Si supone > (es mayor que/colección de) relación, ¿cómo relacionaría eso? Pregunta retórica: que difiere según el lugar donde trabaje, quién es su cliente, etc. Lo mejor es definirlo con sus colegas/clientes y acordar la comprensión de los términos en lugar de la definición. Actualmente utilizo script de prueba = script automatizado, basado en un caso de prueba manual preexistente o en un escenario de prueba.

Además, ¿cómo utiliza el software para probar las diferentes funciones de AUT?

Escribes diferentes pruebas para probar diferentes cosas. Cada prueba realiza ciertas acciones y comprueba si la salida de AUT coincide con lo que esperaba: If displayed_value == expected_value. Un archivo de entrada podría usarse para proporcionar datos para la lista de prueba de nombres de usuario y contraseñas de prueba, por ejemplo. O ejecute la misma prueba con datos diferentes: inicie sesión como un usuario diferente con diferentes mensajes, etc.

Eche un vistazo a RobotFramework y Selenium. Una prueba de marco de robot (escrita en archivos de texto o html) combinada con la biblioteca de Selenium le permitirá escribir una prueba automática que pruebe algo específico ... como la validación de una página de inicio. Debería escribir una prueba por separado para asegurarse de que un usuario pueda ver todos sus mensajes. Otro para probar las notificaciones de compensación. Y así.

+0

¡Gracias por la explicación! – coffeeak

+0

Todavía me pregunto qué es, si hay una, la diferencia entre el arnés de prueba y el marco de prueba. Es la misma herramienta "profundidad"? – Philm

+0

El marco de prueba no incluiría datos o escenarios de prueba, pero eso se refiere al marco 'técnico' y no al "marco" o metodología que podríamos mostrar en un ppt a los gerentes de proyecto :-) Además, si se utiliza una herramienta como Jenkins, Diría que es parte de mi arnés de prueba pero no forma parte del marco (nuevamente, me refiero al técnico). También está la respuesta sobre los apéndices de prueba a continuación, y curiosamente, la [respuesta ISTQB] (http://istqbexamcertification.com/what-is-test-harness-unit-test-framework-tools-in-software-testing/) considera estos diferentes pero agrupados juntos. – aneroid

12

arnés de prueba: Un entorno de prueba compuesto por stubs y controladores necesarios para ejecutar una prueba.

Se usarán arneses y stubs de prueba para replicar los elementos faltantes (componentes aún no incluidos en las pruebas o sistemas externos). A menudo, cuando se realizan pruebas de integración a pequeña escala de varios módulos o componentes, es necesario idear o improvisar métodos y herramientas para obtener los datos de prueba para los componentes bajo prueba. Esto a menudo se llama un arnés de prueba. Debido a la necesidad de comprender los aspectos técnicos necesarios para construir un arnés de prueba, esta prueba casi siempre es realizada por el equipo de desarrollo.

Un arnés de prueba puede facilitar la prueba de componentes o parte de un sistema simulando el entorno en el que se ejecutará ese objeto de prueba. Esto puede hacerse ya sea porque otros componentes de ese entorno todavía no están disponibles y son reemplazados por stubs y/o drivers, o simplemente para proporcionar un entorno predecible y controlable en el cual cualquier falla puede ser localizada en el objeto bajo prueba. Estos suelen ser programas a medida generados por los desarrolladores para ayudar en el proceso de prueba. Si se utilizan en una organización madura, es muy posible que estos arneses se consideren como "Activos de prueba" y estén sujetos a Control de versión & Gestión de la configuración.

+2

Sí, esta es la definición de arnés de prueba de acuerdo con el Glosario de ISTQB –

+0

@ user1109363 ¿cuál sería su razón para no seleccionar esto como la respuesta correcta? –

+0

¿Consideraría que robolectric es un arnés de prueba? porque está usando objetos de sombra – j2emanue

1

Arnés de prueba contiene toda la información necesaria para compilar y ejecutar una prueba. Esto incluye casos de prueba, archivos fuente bajo prueba, stubs y configuración de configuración del puerto de implementación de destino (TDP).

0

Un Arnés de prueba es la colección de todos los elementos necesarios para probar el software a nivel de unidad, módulo, aplicación o sistema y proporciona el mecanismo para ejecutar la prueba.Cada elemento, como los datos de entrada, los parámetros de prueba, el caso de prueba, el guión de prueba, los datos de salida esperados, la herramienta de prueba y el informe de resultados de la prueba es parte del arnés de prueba.

Cuestiones relacionadas