¿Aún se necesitan ingenieros de control de calidad?

Por 21 de noviembre de 2018 #!31Vie, 22 de mayo de 2020 10:42:24 +0200p2431#31Vie, 22 de mayo de 2020 10:42:24 +0200p-10Europe/Warsaw3131Europe/Warsawx31 22am31am-31Vie, 22 de mayo de 2020 10:42:24 +0200p10Europe/Warsaw3131Europe/Warsawx312020Vie, 22 de mayo de 2020 10:42:24 +02004210425amviernes=269#!31Vie, 22 de mayo de 2020 10:42:24 +0200pEuropa/Varsovia5#mayo 22, 2020#!31Vie, 22 de mayo de 2020 10:42:24 +0200p2431#/31Vie, 22 de mayo de 2020 10:42:24 +0200p-10Europa/Varsovia3131Europa/Varsoviax31#!31Vie, 22 de mayo de 2020 10:42:24 +0200pEuropa/Varsovia5# Recursos Humanos, Reclutamiento de IT
está muerta la prueba de control de calidad y ¿necesitas habilidades de control de calidad

There’s no denying that the world is in constant flux. Thanks to the web, automation, and the data procesamiento abilities of modern computers, the border between humans and machines has become fuzzy. How does it affect IT and QA testing in particular? And finally, which QA habilidades hacen grandes probadores de QA bien, grandioso?

Tabla de contenidos

El conjunto ideal de habilidades de control de calidad

A medida que nos volvemos más dependientes de la IA y la automatización, el papel de los probadores de control de calidad también ha cambiado. ¿Existe siquiera un probador de control de calidad ideal? Probablemente no. Sin embargo, aquí están las habilidades de QA comúnmente compartidas por los grandes probadores de QA:

  • Base de datos skills – the ability to check or extract data from databases without anyone’s help
  • Habilidades de codificación - entender el código fuente y buscar casos límite más eficientemente
  • La capacidad de escribir pruebas de automatización usando Geb o RestAssured que permiten al probador evaluar al usuario Interfaz así como el API
  • The ability to look through logs, or even use SSH to log in to a servidor, analyze changes in code, and find the reason why the error occurs. That is not to say testers should be able to analyze problems with transactions or race-condition issues. Still, being able to find a missing exclamation mark in the if statement is definitely a benefit
  • La capacidad de realizar un análisis comercial de los requisitos o incluso de asumir la responsabilidad de los mismos

¿Los monos tienen habilidades de control de calidad?

He oído opiniones encontradas sobre el papel de los probadores manuales. Algunos creen que el papel podría ser fácilmente ocupado por monos entrenados. Otros creen que el trabajo requiere un conjunto específico de habilidades.

¿Dónde está la verdad?

As usual, as with all IT-related things, in the medio.

Some people think that testing can be carried out by your average app users. They believe that hiring 20 junior testers is just as good as using Amazon Mechanical Turk. The question is, can “random” clicking through an app to find problems be effective? I really doubt that. Although it can cover positive paths (as this is how most people use apps), some serious mistakes will likely remain undetected. We could very well ask our kids to do that, right?

¿Los niños tienen habilidades de control de calidad

Habilidades de control de calidad en acción

Un buen probador de control de calidad tiene grandes y muy específicas habilidades analíticas. Los buenos probadores son inquisitivos y buscan problemas, o son quisquillosos, si lo prefieren.

Actualmente, los analistas no suelen involucrarse en los proyectos informáticos. Por esa razón, algunas de sus responsabilidades han sido asumidas por los probadores. Eso es porque las habilidades de control de calidad implican ser inquisitivo sobre los requisitos y cuestionarlos todo el tiempo.

Déjeme explicar esto usando una hipotética conversación entre un probador de QA, un cliente y un desarrollador de software. Cuando se mira a un simple de la empresa, digamos "entrega gratuita cuando se piden 5 libros", el desarrollador del software ve una simple declaración de "si". Si el número de libros es igual a 5 o más, establece el costo de entrega a 0. Fin de la historia.

Es probable que un buen probador diga: "Es un requisito muy corto. Ni siquiera cubre la mayoría de los escenarios". Y entonces empiezan a hacer preguntas incómodas.

TESTER: "¿Qué pasaría si sólo 2 de los libros pedidos están actualmente en stock? ¿Y los tres restantes serán enviados en un segundo paquete? ¿Ambos paquetes son elegibles para entrega gratuita?"

CLIENTE: "Erm, no. Un total de cinco libros deben ser entregados en un solo paquete."

"Ese es otro "si" justo ahí."

"¿Y si pido un lavavajillas y cinco libros? ¿Mi pedido tiene derecho a entrega gratuita?"

CLIENTE: "No, por supuesto que no. La oferta sólo es válida si está pidiendo libros".

"Disculpe, ese es otro 'si'"

"¿Y si consigo 4 ebooks y un libro?"

CLIENTE: "La oferta sólo es válida para los libros impresos".

"Creo que podríamos necesitar hacer las estimaciones de nuevo."

Como ves, los probadores de QA y los desarrolladores de software tienen diferentes mentalidades y diferentes habilidades. Por esa razón, es imposible que los desarrolladores se hagan cargo del control de calidad en su totalidad.

¿Las computadoras se encargarán de las pruebas de control de calidad?

Ahora no se tarda casi nada en pasar de construir un paquete a llevarlo a producción, en tan sólo 15 a 60 minutos. Esto prácticamente descarta una evaluación de calidad manual. En el pasado, las pruebas de los grandes proyectos llevaban semanas. No hay forma de comprimirlo en un par de horas a menos que las pruebas sean automatizadas.

¿Cómo pueden ayudar los ordenadores en las pruebas? Bueno, todas las pruebas de regresión son repetitivas y cuando se trata de tareas repetitivas, los ordenadores tienen sus propios beneficios. Son rápidos, fiables y consistentes. No cometen errores. Después de todo, errar es ser humano, ¿verdad?

Las máquinas no tienen días malos. Y nunca tienen resaca. También es más fácil estimar cuánto tiempo les llevará completar una tarea.

¿Quién debería construir pruebas automatizadas?

Automating testing really is the way forward. Therefore, the right question to ask at this point is who should build automated tests? I believe they should be built by testers who have both QA skills and at least basic coding skills, with an emphasis on the former.

De hecho, este deseable conjunto de habilidades suele seguir una trayectoria profesional común:

Comprobador manual -> Comprobador de automatización -> Desarrollador de software

El cambio hacia el desarrollo de programas informáticos suele estar causado por el agotamiento o la insatisfacción salarial (que poco a poco se va reduciendo a medida que los empleadores empiezan a valorar a los buenos ingenieros de pruebas). Dicho esto, creo que la primera transición de la prueba manual a la prueba automatizada es obligatoria.

Muchos probadores son capaces de escribir consultas para relacional and non-relational databases. The next step is to learn basic coding skills. There are a number of resources which allow people to learn Python, Java or Groovy. There are free and paid courses, tutorials, conferencia presentaciones, libros, ebooks... Lo que sea.

Crear un marco de pruebas de aceptación cómodo para un proyecto requiere muchas más habilidades y mucha más experiencia de la que se necesita para escribir escenarios con él. Los grandes probadores siguen aprendiendo a expandir su perspectiva y también son naturalmente inquisitivos. Esto los hace las mejores personas para construir los marcos. Es esa combinación única de habilidades y cualidades lo que los hace tan valiosos.

Sin duda, la automatización se hará cargo de parte del trabajo de los probadores de control de calidad. Lo importante, sin embargo, es que complementará a los humanos, no se convertirá en un sustituto de ellos. En esencia, liberará a los probadores para que puedan centrarse en la parte humana (creativa) del trabajo. De esta manera, pueden centrarse en la calidad general del producto en lugar de "sólo" eliminar los errores.

Probando las habilidades de control de calidad

Las pruebas que evalúan las habilidades de control de calidad se basan en un principio simple: los candidatos obtienen un sistema completamente funcional con un conjunto de requisitos comerciales. Necesitan escribir pruebas para demostrar que el sistema cumple con todos estos requisitos. Luego comprobamos que esas pruebas son capaces de detectar todos los posibles errores introducidos en el sistema.

Si quieres empezar a probar las habilidades de QA, tengo grandes noticias para ti. Acabamos de publicar nuestras pruebas de evaluación de las habilidades de control de calidad. Pueden encontrarlos abajo y en nuestro catálogo de pruebas de codificación:

Mocha
MIDDLE
Habilidades probadas
Duración
38 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de QA, Prueba

Tarea de programación - Nivel: Medio

Mocha | TypeScript | ATM Service Validation - Write a series of Mocha validation tests for ATM.

Selenio
JUNIOR
Habilidades probadas
Duración
33 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Lagunas en el código

evaluando el conocimiento de NUnit, QA

Tarea de programación - Nivel: Fácil

QA | Selenio, C# | Recuperar datos de elementos - Implementar los métodos que recuperan el texto de un elemento o el valor de un atributo.

QA
SENIOR
Habilidades probadas
Duración
49 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de QA, Pruebas de la unidad, Prueba manual, Prueba

Tarea de programación - Nivel: Duro

QA | Java, Selenium | Automatización de la prueba de autenticación multifactorial - Automatizar el mecanismo de autenticación en Selenium.

Selenio
MIDDLE
Habilidades probadas
Duración
40 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Lagunas en el código

evaluando el conocimiento de Java, QA, Selenio

Tarea de programación - Nivel: Medio

QA | Java, Selenio | Extracción de texto y enlaces - El objetivo de esta tarea es probar las habilidades del candidato para recuperar el texto de la página. Las tareas incluyen esperar a que un elemento con texto sea visible, así como elementos invisibles.

Selenio
JUNIOR
Habilidades probadas
Duración
35 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Lagunas en el código

evaluando el conocimiento de Java, QA, Selenio

Tarea de programación - Nivel: Fácil

Java | Selenio | Descargas y colecciones - Implementar dos métodos en la clase SeleniumExecutor, que debería utilizar el Selenium WebDriver para realizar las siguientes tareas en la página de la src/test/resources/__files/index.html.

Selenio
JUNIOR
Habilidades probadas
Duración
43 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Lagunas en el código

evaluando el conocimiento de Java, Selenio

Tarea de programación - Nivel: Fácil

Java | Selenium | Autenticación en el servicio web - Implementar cuatro métodos en la clase LoginPage marcados con la implementación //TODO. Todos ellos deben usar el Selenium WebDriver para interactuar con la página.

MIDDLE
Habilidades probadas
Duración
24 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de JUnit, QA, Pruebas de la unidad, Spock

Tarea de programación - Nivel: Fácil

JUnit | Servicio ATM | Validación del Servicio ATM - Escriba las pruebas de validación de JUnit para el ATM.

Pepino
MIDDLE
Habilidades probadas
Duración
55 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de QA, Spock, Pruebas de la unidad, JUnit

Tarea de programación - Nivel: Fácil

Pepino | Servicio de Cajero Automático | Validación del Servicio de Cajero Automático - Escriba las pruebas de validación del pepino para el cajero automático.

JavaScript
JUNIOR
Habilidades probadas
Duración
35 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de QA, Spock, Pruebas de la unidad, JUnit, JavaScript

Tarea de programación - Nivel: Fácil

Mocha | Servicio ATM | Validación del Servicio ATM - Escriba una serie de pruebas de validación de Mocha para ATM.

SENIOR
Habilidades probadas
Duración
75 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de QA, Pruebas de la unidad, Actuación

Tarea de programación - Nivel: Duro

JUnit | Servicio de ATM | Validación del Servicio de ATM - Escriba una serie de pruebas de validación de JUnit para ATM.

Cuando reduzcas el número de candidatos que tienes, puedes profundizar en sus habilidades en un entrevista de evaluación de habilidades.

TLDR

¿Se están extinguiendo los probadores de control de calidad? No, en absoluto.

¿Necesitan cambiar para sobrevivir? Definitivamente sí.

¿Puede el desarrollador de software medio sustituir a un probador de control de calidad? Lo dudo mucho.

¿Qué piensas?