how choose best automation testing tool
En este tutorial, hemos cubierto los criterios de selección de herramientas de automatización de pruebas y la lista de verificación con una matriz de comparación de herramientas de automatización de pruebas para su fácil referencia.
La guía de la A a la Z para seleccionar la mejor herramienta de automatización para su proyecto:
Este es el 4thtutorial en nuestra serie de tutoriales de automatización de pruebas. Consulte todos los artículos publicados en esta serie en esta página: => La guía definitiva para iniciar las pruebas de automatización en su proyecto
La selección de herramientas de automatización de pruebas es uno de los pasos más importantes antes de iniciar la automatización en cualquier organización.
Es importante porque la herramienta afectará enormemente a todo su esfuerzo de automatización. Si la herramienta es buena y le brinda las características requeridas, la automatización se vuelve más fácil y efectiva.
Hay muchos criterios a considerar al seleccionar la herramienta de automatización. Algunos de ellos los he comentado en uno de mis artículos anteriores. Aquí he enumerado los aspectos más importantes a considerar al seleccionar la herramienta de automatización de pruebas.
Lo que vas a aprender:
- ¿Son las pruebas automatizadas una solución para usted?
- ¿Cuándo tiene sentido la automatización de pruebas?
- ¿Cómo seleccionar la herramienta de automatización para su proyecto?
- Criterios de evaluación de la herramienta de automatización de pruebas
- Criterios de selección y lista de verificación de la herramienta de automatización de pruebas
- Pregunta # 1: ¿Cuál es el presupuesto de su organización para la herramienta de automatización?
- Pregunta # 2: ¿Cuál es el precio real de la herramienta?
- Pregunta # 3: ¿La herramienta es compatible con el sistema operativo / navegador o dispositivo en el que se ejecuta su aplicación?
- Pregunta n. ° 4: ¿La herramienta es compatible con las tecnologías y los controles de terceros que se utilizan en su aplicación?
- Pregunta nº 5: ¿Cuántos idiomas admite la herramienta? ¿Tiene recursos especializados para estos idiomas?
- Pregunta # 6: ¿La herramienta admite la conexión a diferentes fuentes de datos?
- Pregunta # 7: ¿Cómo es el mecanismo de informes de la herramienta de automatización?
- Pregunta n.º 8: ¿Se puede integrar la herramienta con repositorios de gestión de errores y casos de prueba?
- Pregunta # 9: ¿Cómo es el soporte técnico oficial para la herramienta?
- Pregunta # 10: algunos aspectos técnicos para ver
- Conclusión
- Lectura recomendada
¿Son las pruebas automatizadas una solución para usted?
He trabajado en muchos proyectos en mi carrera. Cuando trabajas en el mismo proyecto durante más de un año, empiezas a sentir la necesidad de automatizar algunas tareas. Empieza a pensar en introducir pruebas de automatización en el proyecto si la dirección del proyecto no lo ha considerado hasta ahora.
Un año es tiempo suficiente para que cualquiera conozca los entresijos de cualquier proyecto. Una vez Si conoce la funcionalidad del proyecto en detalle, será más fácil decidir qué tareas repetitivas deben automatizarse.
Algunos los probadores también se aburren haciendo las mismas tareas repetitivas una y otra vez y comienzan a sentir la necesidad de la automatización de pruebas.
¿Eso significa que debería pasar a las pruebas de automatización de inmediato?
¡Definitivamente no!
Hay muchos criterios en los que debe trabajar antes de decidir si la automatización es una solución para usted. .
¿Cuándo tiene sentido la automatización de pruebas?
- Cuando hay muchas pruebas repetitivas
- Cuando hay iteraciones frecuentes de pruebas de regresión
- Cuando necesites simular una gran cantidad de usuarios que están usando los recursos de la aplicación
- Cuando AUT tiene una IU comparativamente estable
- Cuando tiene un gran conjunto de casos de BVT
- Cuando no puede confiar únicamente en la ejecución manual de pruebas para la funcionalidad crítica
Otras lecturas:
- ¿Cuándo debería optar por la automatización?
- Consejos que debe leer antes de comenzar las pruebas automáticas
Una vez que sepa que es el momento adecuado para invertir su tiempo y dinero en una buena herramienta de automatización, puede comenzar a buscar la mejor herramienta de automatización que se adapte a sus necesidades.
¿Cómo seleccionar la herramienta de automatización para su proyecto?
El éxito de las pruebas de automatización depende en gran medida de la selección de las herramientas de prueba adecuadas. Se necesita mucho tiempo para evaluar las herramientas de automatización relevantes disponibles en el mercado. Pero este es un ejercicio obligatorio que beneficiará a su proyecto a largo plazo.
Hubo pocas situaciones en las que tuve la oportunidad de revisar y seleccionar la herramienta de automatización para mis proyectos. La tarea fue difícil ya que tuvimos que administrar nuestras necesidades de prueba y restricciones de costos, pero fue una experiencia que valió la pena.
Estos son los criterios que debe considerar antes de seleccionar cualquier herramienta de prueba:
Criterios de evaluación de la herramienta de automatización de pruebas
1) ¿Tiene los recursos calificados necesarios para realizar tareas de automatización?
2) ¿Cual es tu presupuesto?
3) ¿La herramienta satisface sus necesidades de prueba? ¿Es adecuado para el entorno del proyecto y la tecnología que está utilizando? ¿Es compatible con todas las herramientas y objetos que se utilizan en el código? En algún momento, es posible que se quede atascado en pequeñas pruebas debido a que la herramienta no puede identificar los objetos utilizados en la aplicación.
Considero los tres factores anteriores como los más importantes para seleccionar cualquier herramienta.
4) ¿La herramienta le proporciona la versión de prueba gratuita para que pueda evaluarla antes de tomar una decisión? Además, ¿la herramienta tiene todas las funciones disponibles en la versión de prueba?
5) ¿Es estable la versión actual de la herramienta? ¿Está la empresa proveedora establecida con un buen soporte al cliente, así como recursos de ayuda en línea y manual de usuario?
6) ¿Cómo es la curva de aprendizaje de la herramienta? ¿El tiempo de aprendizaje es aceptable para sus objetivos?
7) ¿Quiere una herramienta de automatización solo para las necesidades de su proyecto o está buscando una herramienta común para todos los proyectos de su empresa? Sería una buena elección si selecciona una herramienta que admita la mayoría de los lenguajes de codificación en sus proyectos.
cómo ser un programador para principiantes
8 ) ¿Qué tipos de pruebas admite? Una herramienta que admita tipos de prueba máximos (unidad, funcional, regresión, etc.) es siempre una mejor opción.Advertencia- No elija una herramienta solo porque sea compatible con todos los tipos de pruebas. También es importante que la herramienta sea lo suficientemente potente como para automatizar sus complejos requisitos.
9) ¿La herramienta admite una interfaz fácil para crear y mantener scripts de prueba? La herramienta de grabación y reproducción con capacidad para editar guiones grabados podría ser una buena solución.
10) ¿Proporciona una interfaz sencilla pero funciones potentes para realizar tareas complejas?
11) ¿Qué tan fácil es proporcionar datos de prueba de entrada para pruebas complejas o de carga? Una herramienta que admita la entrada de datos de prueba de varios archivos de datos como Excel, XML, archivo de texto, etc. sería un gran alivio para la automatización de los probadores.
12) ¿Proporciona informes potentes con interfaz gráfica? Los informes claros y concisos siempre lo ayudarán a concluir los resultados de la prueba rápidamente.
13) ¿Se integra bien con sus otras herramientas de prueba como la planificación de proyectos y herramientas de gestión de pruebas ?
También puede considerar otros criterios como:
14) Política de reembolso del proveedor de herramientas
15) Reseñas de clientes existentes sobre la herramienta
16) ¿El proveedor brinda capacitación inicial?
Consejos: La recopilación de requisitos es, con mucho, el paso más importante para seleccionar la herramienta adecuada. Asegúrese de clasificar sus requisitos en categorías de características imprescindibles, agradables y no obligatorias. Esto le ayudará a evaluar la herramienta rápidamente. Recuerde que no encontrará una herramienta ya disponible en el mercado que cubra todas sus necesidades de automatización.
Mejores herramientas de automatización :
HP QTP / UFT y selenio son las dos opciones de pruebas funcionales más populares disponibles actualmente. QTP / UFT es la mejor herramienta de prueba funcional compatible con una amplia gama de lenguajes y plataformas de codificación, mientras que Selenium es la mejor herramienta de prueba web funcional de código abierto.
Lea este artículo para obtener la lista de herramientas TOP:
Las 20 mejores herramientas de prueba de automatización en 2020 (lista completa)
En el próximo artículo, analizaremos desafíos de pruebas manuales y de automatización .
Criterios de selección y lista de verificación de la herramienta de automatización de pruebas
Diez preguntas para hacer antes de seleccionar la mejor herramienta de prueba de automatización
Haga las siguientes preguntas siempre que se encuentre en una situación para seleccionar la herramienta de automatización para su organización:
Pregunta 1: ¿Cuál es el presupuesto de su organización para la herramienta de automatización?
Esto es, en mi opinión, lo más importante a considerar al seleccionar la herramienta de automatización.
Por que buscar QTP / UFT e investigarlo cuando no pueda comprar la licencia? La herramienta QTP cuesta alrededor de $ 8000 (aprox.). Si su organización puede comprar la licencia y está confirmado, debe descargar la versión de prueba y realizar un proyecto de automatización dinámica para probar su función. De lo contrario, no debería dedicar tiempo a investigarlo. (Estoy hablando de este escenario si desea utilizar QTP en un proyecto en vivo de la empresa. Si lo está descargando solo con fines de aprendizaje, entonces está bien descargar la versión de prueba).
Pregunta 2: ¿Cuál es el precio real de la herramienta?
El siguiente es el precio de la herramienta de automatización. No solo hay un precio de licencia, sino también el precio de los complementos (si es necesario), la tarifa de soporte, la tarifa de capacitación y la tarifa de actualización.
Hablemos primero de la licencia.
a) Tipos de licencias:
Existen los siguientes tipos de licencias.
1) Licencia de usuario con bloqueo de nodo.
La licencia de usuario bloqueado por nodo admitirá la herramienta de automatización de pruebas para usar en una sola computadora física en la red de su empresa. Solo puede ejecutar una instancia de la herramienta en el equipo con licencia a la vez. Esta licencia generalmente está vinculada al nombre de host de la máquina.
2) Licencia de usuario flotante concurrente
Una licencia de usuario flotante se puede compartir entre diferentes máquinas, pero solo puede ser utilizada por una máquina a la vez. No está vinculado al nombre de la máquina ni nada, en cambio, utiliza un administrador de licencias (instalado en un servidor) para administrar la misma licencia en diferentes máquinas.
Básicamente, con la licencia Node-Locked, no tiene la libertad de instalar la herramienta en una máquina, desinstalarla y luego instalarla nuevamente en cualquier otra máquina. Pero con la licencia de usuario flotante, puede hacer eso.
3) Licencia de tiempo de ejecución
Los dos tipos de licencias mencionados anteriormente se suelen comprar para 'desarrollar' los scripts. Entonces, estas son licencias de 'desarrollo'. Para ejecutar los scripts en diferentes máquinas, necesita tener la licencia de “ejecución” o “Runtime” para cada máquina.
Ejemplo:
Por ejemplo, si un evaluador necesita desarrollar y ejecutar casos de prueba en la misma máquina, una licencia de desarrollo es suficiente.
Pero si necesita desarrollar en una máquina y ejecutar los casos de prueba en tres máquinas virtuales o físicas diferentes, necesita comprar una licencia de 'desarrollo' y tres licencias de tiempo de ejecución.
el mejor sitio para ver anime en
Algunos proveedores ofrecen licencias de tiempo de ejecución gratuitas (como IU codificada) y algunos ofrecen un precio (como Prueba completa, Ranorex, etc.). Entonces todo depende de un proveedor a otro.
4) Licencia de código abierto
Es decisión de su empresa optar por una herramienta comercial y pagar un costo o optar por una herramienta de código abierto.
Las herramientas comerciales son caras, pero ofrecen un gran apoyo y son fáciles de usar con una gran cantidad de material de formación proporcionado. Las herramientas comerciales suelen ser 'una herramienta para todas las necesidades'. Las herramientas de código abierto son gratuitas, pero generalmente son más difíciles de aprender. Hay poco soporte oficial, pero puede encontrar soluciones visitando diferentes foros. Las soluciones de código abierto normalmente son para necesidades específicas.
b) Tarifa de soporte, actualización y capacitación:
Para obtener asistencia, capacitación y una tarifa de actualización, es posible que deba llamar al representante de la empresa. Algunas empresas ofrecen descuentos especiales en la compra masiva de licencias, por lo que a veces esta información no se menciona claramente en los sitios web. Obtendrá la información solo a través de llamadas o correos electrónicos.
Pregunta 3: ¿La herramienta es compatible con el sistema operativo / navegador o dispositivo en el que se ejecuta su aplicación?
Esta pregunta normalmente depende del tipo de aplicación que esté utilizando.
a) Si está basado en escritorio:
Si está trabajando en una aplicación de escritorio, debe describir la cantidad de sistemas operativos que desea probar esa aplicación. Estaba trabajando en una aplicación de escritorio y quería probarla en Windows 7 y Windows 8.1. Así que elegí la IU codificada porque es compatible con ambos.
b) Si se basa en un navegador
Si está trabajando en una aplicación web, debe describir la cantidad de navegadores que desea probar esta aplicación. Quería ejecutar mis casos de prueba en FireFox, Chrome e IE. Elegí selenium para mi aplicación web porque es compatible con todos estos navegadores. Asegúrese de que la herramienta que elija admita tanto las versiones anteriores como las más recientes de los navegadores requeridos.
c) Si está basado en dispositivos móviles
Si está trabajando en aplicaciones móviles, debe saber en qué sistemas operativos móviles debe ejecutar sus casos de prueba. Si su aplicación se ejecuta tanto en Android como en IOS, su herramienta debería admitirlo. Selenium tiene controladores separados para ejecutar scripts en Android, IOS, Windows Phone y BlackBerry. También puede utilizar una herramienta separada para cada uno de los sistemas operativos móviles. Hay Robotium para Android, Appium para IOS y Android y CodedUI para aplicaciones de teléfonos con Windows.
Una vez más, esto llega al debate de código abierto frente a comercial. Como puede ver, hay código abierto independiente herramientas para probar en la web , basado en móvil y aplicaciones de escritorio. Pero si opta por una herramienta comercial como Test complete, Ranorex o Test Studio, pueden probar los tres tipos (aplicaciones móviles, de escritorio y basadas en navegador). Entonces, en el caso de la herramienta comercial, necesita aprender solo una herramienta para probar aplicaciones web, de escritorio y móviles.
Pregunta # 4: ¿La herramienta es compatible con las tecnologías y los controles de terceros utilizados en su aplicación?
Este es un aspecto muy importante al seleccionar la herramienta. Debes saber de primera mano qué tecnologías se están utilizando en tu aplicación. Consulte a sus desarrolladores y anótelos. Si están utilizando HTML 5 o SilverLight en aplicaciones web, tenga cuidado, no hay muchas herramientas de automatización que los admitan. Si la herramienta afirma ser compatible con estas tecnologías, descargue la versión de prueba de esa herramienta e intente identificar diferentes objetos en su aplicación. Si la herramienta no los identifica, entonces su afirmación es falsa. Esa actividad te salvará de la miseria posterior.
Matriz de comparación de herramientas de automatización de pruebas:
La siguiente tabla compara diferentes herramientas con respecto a su precio de licencia y su soporte para diferentes tecnologías. (Debe tomar este cuadro como una práctica de aprendizaje sobre cómo crear comparaciones entre diferentes herramientas, pero la precisión de los datos proporcionados no es del 100%)
(Haga clic en la imagen para verla ampliada)
Y = admitido, N = no admitido, U = desconocido
Pregunta # 5: ¿Cuántos idiomas admite la herramienta? ¿Tiene recursos especializados para estos idiomas?
Aprender la herramienta es un aspecto. Aprender el idioma es otro aspecto. Si tiene recursos que tienen experiencia en Java y su herramienta no es compatible con Java, el tiempo para aprender el nuevo idioma se agregará a su esfuerzo de automatización.
Otro aspecto es que si su producto está construido en Java, debe tener un equipo de desarrolladores que sean expertos en Java. Estos desarrolladores también pueden ayudar al equipo de automatización en términos de problemas relacionados con el idioma. Es importante seleccionar la herramienta que ofrece un idioma que esté familiarizado con sus recursos y le ayudará a minimizar la curva de aprendizaje de sus recursos.
los Selenium WebDriver ofrece escritura de scripts en múltiples lenguajes como C #, Java, Python, Ruby y en JavaScript. TestComplete también ofrece escritura de secuencias de comandos en múltiples lenguajes de secuencias de comandos como VBScript, JScript, DelphiScript, C ++ Script y C # Script.
Pregunta # 6: ¿La herramienta admite la conexión a diferentes fuentes de datos?
Si usamos un marco de automatización como el impulsado por palabras clave o basado en datos, necesitamos tener la capacidad de conectar nuestra herramienta a cualquier fuente de datos. Si la herramienta proporciona conectividad con diferentes fuentes de datos fácilmente, será muy beneficioso.
Consulte el soporte para fuentes de datos comunes, como un archivo CSV, un archivo de Excel, un archivo XML y una base de datos. Si estos están presentes en una herramienta, está listo para comenzar.
Pregunta # 7: ¿Cómo es el mecanismo de informes de la herramienta de automatización?
Cuando ejecutamos el script, pasará o no. En el caso del pase, no se necesita mucha información, excepto la duración y la información del entorno. Pero en caso de falla, necesitamos un informe completo sobre la falla. El informe debería decirnos exactamente en qué paso falla el guión. Una instantánea del momento del fallo será una ventaja añadida.
Además, este informe debe exportarse a diferentes formatos para que podamos compartirlo con las partes interesadas. En muchas herramientas, estas opciones están integradas y en algunas herramientas, hay formas de hacer que su informe sea completo. Esta es otra cosa a tener en cuenta cuando descarga la versión de prueba de la herramienta. Si proporciona informes completos sobre fallas, es mejor para la organización.
Pregunta # 8: ¿Se puede integrar la herramienta con repositorios de gestión de errores y casos de prueba?
Es muy probable que su organización ya esté utilizando algún caso de prueba o herramienta de gestión de errores . Las empresas obviamente quieren que su herramienta automatizada se integre con su herramienta de gestión de casos de prueba existente para que todo el ciclo de vida de su aplicación se gestione correctamente. Este aspecto también debe verse al seleccionar la herramienta de automatización de pruebas.
QTP admite QLM, admite IU codificada TFS y TestComplete es compatible con QAComplete. Algunas herramientas de código abierto también tienen soporte para integrarse con herramientas de gestión de pruebas de código abierto existentes. Todo depende de lo que su organización esté utilizando realmente.
mejores bloqueadores de ventanas emergentes para chrome
Pregunta # 9: ¿Cómo es el soporte técnico oficial para la herramienta?
Aquí solo hablamos de herramientas comerciales. Cuando selecciona una herramienta comercial, su aspecto de soporte es muy importante. Consulte el material de formación proporcionado en el sitio web. ¿El sitio web contiene videos y tutoriales? ¿El sitio web tiene un foro oficial para hacer preguntas? Descargue la versión de prueba y envíe una pregunta en su foro y vea cuántos días recibe respuesta. ¿Proporcionan soporte para una llamada?
Las preguntas anteriores realmente deberían hacerse cada vez porque está gastando una buena cantidad de dinero en la herramienta. Si la herramienta no tiene un buen soporte, no se moleste en comprarla.
Pregunta # 10: Algunos aspectos técnicos para ver
Hay algunos otros aspectos técnicos para ver, como:
a) Soporte de grabación y reproducción
No es un enfoque recomendado en la automatización de pruebas, pero es bueno tener una herramienta. Simplifica el proceso de aprendizaje de la herramienta y ayuda a automatizar fácilmente escenarios sencillos.
b) Diferentes métodos de reconocimiento de objetos y soporte de mapeo de objetos
Debe haber una variedad de seleccionar el mismo objeto con diferentes métodos. Algunos objetos son difíciles de reconocer. Por eso, la variedad de métodos de selección siempre es útil.Por ejemplo, el selenio admite la selección de objetos id, nombre, clase, prueba de enlace, XPATH , Selector de CSS y JavaScript. Aquí hay un tutorial sobre: cómo QTP identifica los objetos de forma única . Si un método de selección no funciona, tenemos una variedad de otros métodos para elegir que siempre son útiles.
De manera similar, debería haber una opción para mapear correctamente estos objetos en el repositorio de objetos. Este repositorio debe poder actualizarse y administrarse fácilmente. Solo para recordarle que Selenium no tiene soporte integrado para mapeo de objetos.
c) Diferentes puntos de control o soporte de afirmación.
El caso de prueba se pasa o falla en función de puntos de control o afirmaciones. Si la herramienta tiene una variedad de métodos para verificar los resultados esperados, es beneficiosa. QTP tiene una variedad de puntos de control como Estándar , Mapa de bits , Mesa , XML, base de datos y puntos de verificación del contenido del archivo.
d) Manejo de escenarios de recuperación.
Si el caso de prueba falla y desea continuar con la ejecución, ¿la herramienta lo admite fácilmente? Si los escenarios de recuperación son fáciles de administrar en una herramienta, le permitirá ejecutar casos de prueba sin ningún problema. Puede ejecutar los casos de prueba por la noche y por la mañana obtiene los resultados que indican qué casos de prueba fallaron y qué casos de prueba se aprobaron. Esto sucederá solo si la herramienta puede gestionar fácilmente la recuperación de casos de prueba fallidos. De lo contrario, se desperdiciará una buena cantidad de esfuerzo de automatización en el manejo de escenarios de recuperación. Ver gestión de escenarios de recuperación en QTP .
Conclusión
Recuerde siempre que ninguna herramienta es buena o mala. Todo depende de sus requisitos y la naturaleza del producto.
El selenio puede ser la herramienta de automatización más popular, pero si su producto está basado en el escritorio, esta herramienta no es útil para usted. Primero, comprenda su producto y luego busque la herramienta adecuada que coincida con sus requisitos utilizando las pautas mencionadas en este tutorial.
La selección correcta de herramientas de automatización juega un papel vital en la automatización exitosa.
Siguiente tutorial - Nuestro próximo tutorial de esta serie es sobre 'Desarrollo de scripts y marcos de automatización con ejemplos'. De nuevo, revisa todos los tutoriales de esta serie en esta página .
No dude en publicar sus consultas / comentarios a continuación sobre cómo seleccionar la herramienta de automatización adecuada.
PREV Tutorial #3 | SIGUIENTE Tutorial # 5
Lectura recomendada
- Sikuli GUI Automation Testing Tool - Guía para principiantes, parte 2
- Pruebas alfa y beta (una guía completa)
- Tutorial de Geb: pruebas de automatización del navegador con la herramienta Geb
- Guía completa de pruebas de verificación de compilación (pruebas de BVT)
- Mejores herramientas de prueba de software 2021 (Herramientas de automatización de pruebas de control de calidad)
- Pruebas funcionales versus pruebas no funcionales
- Guía paso a paso para implementar la prueba de concepto (POC) en las pruebas de automatización
- Proceso de prueba de automatización de 10 pasos: cómo iniciar las pruebas de automatización en su organización