A-t-on encore besoin d'ingénieurs en assurance qualité ?

21 novembre 2018
L'assurance qualité est-elle morte et avez-vous besoin de compétences en la matière ?

There’s no denying that the world is in constant flux. Thanks to the web, automation, and the data processing 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 skills make great QA testers well, great?

L'ensemble idéal de compétences en matière d'AQ

Comme nous devenons plus dépendants de l'IA et de l'automatisation, le rôle des testeurs d'AQ a également changé. Existe-t-il même un testeur d'assurance qualité idéal ? Probablement pas. Cependant, voici les compétences en matière d'assurance qualité que partagent généralement les grands testeurs :

  • Database skills – the ability to check or extract data from databases without anyone’s help
  • Compétences en matière de codage - comprendre le code source et rechercher plus efficacement les cas marginaux
  • The ability to write automation tests using Geb or RestAssured which allow the tester to assess the user interface as well as the API
  • La possibilité de consulter les journaux, ou même d'utiliser SSH pour se connecter à un serveur, analyser les changements de code et trouver la raison pour laquelle l'erreur se produit. Cela ne veut pas dire que les testeurs doivent pouvoir analyser des problèmes de transaction ou des problèmes de condition de course. Néanmoins, être capable de trouver un point d'exclamation manquant dans l'énoncé if est certainement un avantage
  • La capacité de procéder à une analyse commerciale des besoins ou même d'en assumer la responsabilité

Les singes ont-ils des compétences en matière d'assurance qualité ?

J'ai entendu des avis mitigés sur le rôle des testeurs manuels. Certaines personnes pensent que ce rôle pourrait facilement être rempli par des singes entraînés. D'autres pensent que le poste exige un ensemble de compétences spécifiques.

Où se trouve la vérité ?

Comme d'habitude, comme pour toutes les choses liées aux technologies de l'information, au milieu.

Certaines personnes pensent que les tests peuvent être effectués par les utilisateurs moyens de l'application. Ils pensent qu'engager 20 testeurs juniors est aussi bon que d'utiliser Amazon Mechanical Turk. La question est de savoir si le fait de cliquer "au hasard" dans une application pour trouver des problèmes peut être efficace. J'en doute vraiment. Bien qu'il puisse couvrir des chemins positifs (puisque c'est ainsi que la plupart des gens utilisent les applications), certaines erreurs graves resteront probablement non détectées. On pourrait très bien demander à nos enfants de le faire, non ?

les enfants ont-ils des compétences en matière d'assurance qualité

Les compétences en matière d'AQ en action

Un bon testeur d'assurance qualité possède de grandes compétences analytiques très spécifiques. Les bons testeurs sont curieux et recherchent les problèmes, ou pinaillent, si vous voulez.

Actuellement, les analystes ne s'impliquent généralement pas dans les projets informatiques. C'est pourquoi certaines de leurs responsabilités ont été reprises par des testeurs. En effet, les compétences en matière d'assurance qualité impliquent d'être curieux des exigences et de les remettre en question en permanence.

Let me explain this using a hypothetical conversation between a QA tester, a customer, and a software developer. When looking at a simple requirement, say “free delivery when ordering 5 books,” the software developer sees a simple “if” statement. If the number of books equals 5 or more, set delivery cost to 0. End of story.

Un bon testeur est susceptible de le dire : "C'est une exigence très courte. Elle ne couvre même pas la plupart des scénarios". Et ils commencent alors à poser des questions gênantes.

TESTER : "Que faire si seulement 2 des livres commandés sont actuellement en stock ? Et que les trois autres seront envoyés dans un deuxième colis ? Les deux colis peuvent-ils être livrés gratuitement ?

CLIENT : "Euh, non. Un total de cinq livres doit être livré dans un seul colis".

DÉVELOPPEUR DE LOGICIELS : "C'est un autre "si" juste là."

TESTER : "Et si je commande un lave-vaisselle et cinq livres ? Ma commande peut-elle être livrée gratuitement ?

CLIENT : "Non, bien sûr que non. L'offre n'est valable que si vous commandez des livres".

DÉVELOPPEUR DE LOGICIELS : "Excusez-moi, c'est un autre "si"".

TESTER : "Et si je reçois 4 ebooks et un livre ?

CLIENT : "L'offre n'est valable que pour les livres imprimés".

DÉVELOPPEUR DE LOGICIELS : "Je pense que nous pourrions avoir besoin de refaire les estimations".

Comme vous le voyez, les testeurs de l'AQ et les développeurs de logiciels ont des mentalités et des compétences différentes. C'est pourquoi il est impossible pour les développeurs de prendre en charge l'AQ dans son intégralité.

Les ordinateurs prendront-ils le relais des tests d'assurance qualité ?

Il ne faut pratiquement plus de temps pour passer de la construction d'un paquet à sa production, soit 15 à 60 minutes seulement. Cela exclut pratiquement une évaluation manuelle de la qualité. Dans le passé, les tests de grands projets prenaient des semaines. Il est impossible de réduire ce délai à quelques heures, à moins d'automatiser les tests.

Comment les ordinateurs peuvent-ils aider à effectuer des tests ? Eh bien, tous les tests de régression sont répétitifs et lorsqu'il s'agit de tâches répétitives, les ordinateurs ont leurs propres avantages. Ils sont rapides, fiables et cohérents. Ils ne font pas d'erreurs. Après tout, l'erreur est humaine, n'est-ce pas ?

Les machines n'ont pas de mauvais jours. Et elles n'ont jamais la gueule de bois. Il est également plus facile d'estimer le temps qu'il leur faudra pour accomplir une tâche.

Qui devrait construire des tests automatisés ?

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.

En fait, cet ensemble de compétences souhaitables suit généralement un parcours professionnel commun :

Testeur manuel -> Testeur d'automatismes -> Développeur de logiciels

L'évolution vers le développement de logiciels est souvent due à l'épuisement professionnel ou à l'insatisfaction salariale (qui devient peu à peu un problème car les employeurs commencent à valoriser les bons ingénieurs d'essai). Cela dit, je pense que la première transition du test manuel au test automatisé est obligatoire.

Many testers are able to write queries for relational 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, conference presentations, books, ebooks… You name it.

Créer un cadre de test d'acceptation confortable pour un projet nécessite beaucoup plus de compétences et d'expérience que pour écrire des scénarios avec ce cadre. Les grands testeurs apprennent sans cesse à élargir leur perspective et sont naturellement curieux. Cela fait d'eux les meilleurs pour construire les cadres. C'est cette combinaison unique de compétences et de qualités qui les rend si précieux.

Il ne fait aucun doute que l'automatisation prendra en charge une partie du travail des testeurs de l'AQ. Mais l'important, c'est qu'elle complétera l'homme et ne se substituera pas à lui. En fait, elle libérera les testeurs afin qu'ils puissent se concentrer sur la partie humaine (créative) du travail. Ainsi, ils pourront se concentrer sur la qualité globale du produit plutôt que de "simplement" éliminer les bugs.

Tester les compétences en matière d'assurance qualité

Les tests évaluant les compétences en matière d'AQ reposent sur un principe simple : les candidats obtiennent un système entièrement fonctionnel avec un ensemble d'exigences commerciales. Ils doivent passer des tests pour prouver que le système répond à toutes ces exigences. Nous vérifions ensuite que ces tests sont capables de détecter tous les bogues potentiels introduits dans le système.

Si vous voulez commencer à tester les compétences en matière d'AQ, j'ai une excellente nouvelle pour vous. Nous venons de publier nos tests d'évaluation des compétences en matière d'assurance qualité. Vous pouvez les trouver ci-dessous et dans notre catalogue de tests de codage:

JUNIOR
Des compétences éprouvées
Durée
35 minutes max.
Évaluation
Manuel
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des Tests manuels, QA, Test, TestingProcess

Tâche de révision du code - Niveau : Facile

QA | BDD | CurrencyExchange feature file - Faites une revue de code d'un ensemble de tests BDD mal écrits.

Moka
MIDDLE
Des compétences éprouvées
Durée
38 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des QA, Test

Tâche de programmation - Niveau : Moyen :

Mocha | TypeScript | Validation du service ATM - Rédigez une série de tests de validation de Mocha pour ATM.

Sélénium
JUNIOR
Des compétences éprouvées
Durée
33 minutes max.
Évaluation
Automatique
Aperçu des tests

Lacunes dans les codes

l'évaluation de la connaissance des NUnit, QA

Tâche de programmation - Niveau : Facile

AQ | Sélénium, C# | Récupérer des données à partir d'éléments - Mettre en œuvre les méthodes qui permettent de récupérer du texte à partir d'un élément ou de la valeur d'un attribut.

QA
SENIOR
Des compétences éprouvées
Durée
49 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des QA, Test à l'unité, Tests manuels, Test

Tâche de programmation - Niveau : Difficile

AQ | Java, Sélénium | Automatisation des tests d'authentification multi-facteurs - Automatiser le mécanisme d'authentification au Sélénium.

Sélénium
MIDDLE
Des compétences éprouvées
Durée
40 minutes max.
Évaluation
Automatique
Aperçu des tests

Lacunes dans les codes

l'évaluation de la connaissance des Java, QA, Sélénium

Tâche de programmation - Niveau : Moyen :

AQ | Java, Sélénium | Extraction de texte et de liens - Cette tâche a pour but de tester les capacités du candidat à récupérer du texte dans la page. Les tâches comprennent l'attente d'un élément avec du texte pour qu'il soit visible ainsi que des éléments invisibles.

Sélénium
JUNIOR
Des compétences éprouvées
Durée
35 minutes max.
Évaluation
Automatique
Aperçu des tests

Lacunes dans les codes

l'évaluation de la connaissance des Java, QA, Sélénium

Tâche de programmation - Niveau : Facile

Java | Selenium | Dropdowns et collections - Implémentez deux méthodes dans la classe SeleniumExecutor, qui doit utiliser le pilote Web Selenium pour effectuer les tâches ci-dessous sur la page à partir de la page src/test/resources/__files/index.html.

Sélénium
JUNIOR
Des compétences éprouvées
Durée
43 minutes max.
Évaluation
Automatique
Aperçu des tests

Lacunes dans les codes

l'évaluation de la connaissance des Java, Sélénium

Tâche de programmation - Niveau : Facile

Java | Sélénium | Authentification dans le service web - Implémentation de quatre méthodes dans la classe LoginPage marquée par l'implémentation //TODO. Toutes doivent utiliser le pilote Web Selenium pour interagir avec la page.

JUnit
MIDDLE
Des compétences éprouvées
Durée
24 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des JUnit, QA, Test à l'unité, Spock

Tâche de programmation - Niveau : Facile

JUnit | ATM Service | ATM Service Validation - Rédiger des tests de validation JUnit pour ATM.

Concombre
MIDDLE
Des compétences éprouvées
Durée
55 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des QA, Spock, Test à l'unité, JUnit

Tâche de programmation - Niveau : Facile

Concombre | Service ATM | Validation du service ATM - Rédigez des tests de validation de concombre pour ATM.

JavaScript
JUNIOR
Des compétences éprouvées
Durée
35 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des QA, Spock, Test à l'unité, JUnit, JavaScript

Tâche de programmation - Niveau : Facile

Mocha | Service ATM | Validation du service ATM - Rédigez une série de tests de validation du moka pour l'ATM.

Lorsque vous réduisez le nombre de candidats que vous avez, vous pouvez approfondir leurs compétences dans un entretien d'évaluation des compétences.

TLDR

Les testeurs d'assurance qualité vont-ils disparaître ? Absolument pas.

Ont-ils besoin de changer pour survivre ? Certainement.

Le développeur de logiciels moyen peut-il se substituer à un testeur d'assurance qualité ? J'en doute vraiment.

Qu'en pensez-vous ?

Partager le poste

C'est plus qu'un simple bulletin d'information

Recevez des informations utiles directement dans votre boîte de réception et apprenez-en davantage sur l'embauche des techniciens.

Vérifier et développer les compétences de codage de manière transparente.

Voir les produits DevSkiller en action.

Certifications de sécurité et conformité. Nous veillons à ce que vos données soient sûres et sécurisées.