¿Cuál es la próxima gran cosa en las pruebas de software?

Descargo de responsabilidad completo: soy un empleado de uTest, la comunidad de probadores de software, y administro uTest University .

Mis colegas y yo hemos hablado mucho sobre la próxima gran novedad para las pruebas de software, especialmente en lo que se refiere a educar a los evaluadores sobre cómo prepararse para “eso”. Mi voto para la próxima gran cosa es la próxima ola de dispositivos de Internet de las cosas (IoT). Será imprescindible para cualquier evaluador comprender no solo la conectividad, la funcionalidad y la usabilidad de estos dispositivos, sino también comprender la infraestructura necesaria para admitir estos dispositivos.

Este nuevo paradigma representará un cambio bastante grande en cómo y dónde se realizan las pruebas. Una vez que los dispositivos IoT estén más generalizados en nuestras vidas, tendremos que salir de detrás de nuestras computadoras y tabletas. Necesitaremos saber cómo probar un dispositivo de acondicionamiento físico que se comunica con nuestros electrodomésticos de cocina, por ejemplo. Otro escenario de ejemplo es probar las aplicaciones de un vehículo que están cargadas en su sistema informático a bordo.

Las pruebas de software siempre han sido un área interesante (y experiencia para). Hubo una gran cantidad de productos que se estrenaron en escena, pero nadie hizo un destaque visible. Utilicé varios, desde la automatización del navegador hasta las pruebas de interfaz de usuario dentro de las herramientas de desarrollo y algunos son geniales, mientras que otros carecen. Lo que hacemos realmente en las pruebas es casi todo manual. Sin inteligencia, sin sugerencias de herramientas, sin corrección en nuestras conjeturas, no y no y no … Tal vez requiero mucho, pero quiero buscar herramientas de prueba de software que:

  • Entiende profundamente mi aplicación
  • No está conectado a una plataforma específica / acceso desde y hacia todas partes
  • Prueba de movimiento / tema / diseño / animaciones
  • Tener cierta inteligencia artificial en la generación de datos.
  • Dar recomendaciones para romper las reglas de la plataforma

Por lo tanto, solo si alguno de los puntos mencionados anteriormente se resuelve, cambiará rápidamente nuestra visión de las pruebas.
Porque, ¿por qué los desarrolladores de software carecen de ser buenas pruebas (no hablando para todos, por supuesto)? Porque tienen que aprender un nuevo idioma. Y tienen que aprender herramientas adicionales. Y tienen que aprender un protocolo adicional para comprender los resultados. Y el resultado … déjalo. Probar manualmente porque ninguna herramienta es como la humana. Sí, ninguna herramienta es como la humana, pero imagina doscientas formas de interfaz de usuario para probar en una aplicación de tableta. No, cada humano falla en las pruebas de calidad de este escenario, incluso si tiene dos meses de tiempo, eso en la vida real nunca sucederá.
Me gustaría ver pruebas de software más orientadas a las tendencias de IA . Y espero que podamos hacer algo mejor en este tema en términos de realizar productos de calidad.

Las pruebas de software a través de la automatización, es decir, las pruebas de software automatizadas son uno de los términos más populares que se siguen en estos días al hablar sobre las pruebas generales de software. Hoy en día, más y más probadores de software, así como QA están cambiando de pruebas manuales a pruebas automatizadas.

Una de las razones principales detrás de este cambio de las pruebas manuales a las pruebas automatizadas es que las pruebas de software automatizadas ayudan a aumentar la efectividad, la eficiencia y la cobertura de prueba de sus pruebas de software. Las pruebas manuales tienen su propia importancia, pero en estos días se considera un método de prueba de software que consume mucho tiempo. Además, como los scripts de prueba deben reproducirse o probarse una y otra vez, las pruebas a través de la automatización presentan la función ” Grabar y reproducir “. Las funciones de grabación y reproducción / reproducción permiten a los usuarios grabar de forma interactiva las acciones del usuario y reproducirlas varias veces, comparando los resultados reales con los esperados. Otro beneficio de esta característica es que requiere muy poco o ningún desarrollo de software. Por ejemplo

Las pruebas de software automatizadas pueden aumentar la profundidad y el alcance de las pruebas y, por lo tanto, ayudan a mejorar la calidad general del software. Incluso los departamentos de software más grandes no pueden realizar una prueba controlada de aplicaciones web con miles de usuarios. Las pruebas automatizadas pueden simular decenas, cientos o miles de usuarios virtuales que interactúan con aplicaciones y software web o de red.

Algunas de las herramientas de automatización de pruebas de software ampliamente utilizadas por los probadores / QA son:

1. selenio,

2. TestingWhiz,

3. Estudio de prueba,

4. Ranorex

5. Rapise, etc.

Entre estas herramientas, Testingwhiz es una herramienta de automatización de pruebas sin código con múltiples funcionalidades como la automatización de pruebas web, pruebas de navegador cruzado, pruebas de bases de datos automatizadas, etc. con una mejor interfaz de usuario.

En este momento estoy jugando con las pruebas de mutación en Python y Ruby y creo que esto será grande en los próximos años. Es una técnica que modifica su código, por ejemplo, True se convierte en False y vuelve a ejecutar su conjunto de pruebas contra cada posible mutación. Esto le dice qué tan bueno es su conjunto de pruebas.

He estado descubriendo patrones interesantes en el código bajo prueba y he contribuido en gran medida al desarrollo de las herramientas de prueba.

¡Hola! Será genial si las pruebas de software pueden aprender cómo interactuará el usuario con la aplicación. Además de utilizar el caso de prueba estándar para garantizar la calidad, las pruebas de software serán buenas si puede aprender el comportamiento del usuario, ya que generalmente el usuario puede encontrar algunos errores que el programador no puede esperar o no puede adivinar. Algunos investigadores ya intentan implementar el aprendizaje automático en las pruebas de software. Siempre es interesante ver cómo se desarrollan las pruebas de software.
Por favor corrígeme si estoy equivocado.
Gracias 🙂

More Interesting

¿Qué habilidades y experiencias necesito para pasar de la gestión de proyectos a la ingeniería de software?

¿Por qué las personas están tan desesperadas por los "me gusta" en Instagram que están dispuestas a obtener soporte de terceros para obtenerlas? ¿Cómo afecta a la psique del usuario?

Dispositivos móviles: ¿podrían las mejoras en el software que convierten la escritura y la voz en texto volver obsoleto el teclado físico?

¿Cuáles son algunos de los mejores pósters que crean softwares?

¿Cómo han llegado las aplicaciones 'Reliance Jio' a la primera posición, tan rápido en 'Google Play Store'?

¿Cómo explicaría la diferencia entre * y. * En MATLAB?

¿Cómo lee una aplicación de terceros los mensajes de WhatsApp?

¿Cuáles son las aplicaciones de la convolución?

¿Qué software / editores de texto suelen usar los programadores para crear un sitio web?

¿Qué es un proceso paso a paso para crear una aplicación para una persona que tiene casi cero experiencia y / o conocimiento sobre la creación de aplicaciones?

¿Qué otros lenguajes y tecnologías debe conocer un desarrollador de aplicaciones Swift / iOS / programador Objective C para desarrollar aplicaciones iOS?

¿Cuáles son los softwares ERP locales en India?

¿Cuáles son los mejores programas gratuitos de aprendizaje de inglés para Windows?

¿Son los mismos métodos para el diseño arquitectónico de software y sistemas?

¿Qué aplicaciones tienen un menú de área de activación adaptativa?