Aperçu des tests automatisés / outils d'automatisation

Tests automatisés

◆ Les tests automatisés sont le processus de transformation des tests manuels en produits de test avec des machines, des logiciels et des programmes.
Insérez la description de l'image ici
Souvent, les cas d'utilisation pour les tests automatisés proviennent de tests fonctionnels dans le cadre de tests fonctionnels, et plus souvent de tests de fumée, générant des scripts de test à partir de tests de fumée.

Les tests automatisés utilisent du code au lieu de certains travaux manuels.

L'importance des tests automatisés
1. Raccourcissez le cycle de développement et de test des logiciels, afin que les produits puissent être mis sur le marché plus rapidement. Efficacité de test élevée, utilisez pleinement les ressources matérielles. (L'importance des tests automatisés dans Agile est extraordinaire. Il peut effectuer des tests de logiciels plus rapidement. Il peut effectuer une régression automatisée la nuit pour terminer le test.)
2. Économisez des ressources humaines et réduisez les coûts de test.
3. Améliorez la stabilité et la fiabilité du test. (Peut être dû à la lenteur ou à l'inattention des gens, le test n'est pas stable et fiable)
4. Améliorez l'exactitude et la précision des tests de logiciels et augmentez la confiance des logiciels.
5. Les outils de test logiciel facilitent le test, mais peuvent produire des résultats de test de meilleure qualité.

Analyse des scénarios d'application pour les tests automatisés
◆ La première chose à considérer est le type de projet qui convient à l'automatisation
◆ Déterminez si le projet utilise des tests automatisés, faites généralement attention aux aspects suivants:

1. Les 需求变更有计划性,并且频率不高。
exigences ne peuvent pas être trop modifiées, sinon il n'y a pas de temps pour maintenir les tests automatisés
2. Par 项目周期长, 资源丰富。
exemple, Alipay a des fonctions compliquées et convient à l'automatisation, mais si ce projet ne dure que quelques jours, il n'est pas nécessaire d'automatiser
3 脚本重复利用率。
.代码规范。

◆ En considérant quel type de projet peut utiliser l'automatisation, la prochaine chose que nous devons comprendre est que dans un projet, nous devons également distinguer les parties qui conviennent à l'automatisation
◆ Une vue commune:
que les tests automatisés conviennent mieux aux tests de régression et aux API (interface ) Le test, le test manuel est plus approprié pour le test d'acceptation et le test GUI. ( 大多数人认为带页面的用手工,带接口的用自动化,但是这个观点是不对的)

◆ Vue correcte:
ce qui distingue les tests manuels et les tests automatisés n'est en fait pas lié à l'API ou à l'interface graphique, à la régression ou à la fonction.应该从代码是业务逻辑相关还是基础性代码出发

业务逻辑代码对应终端用户使用的那些功能, le travail est en fait terminé.

◆ Le code de base确保业务逻辑代码运行在合适的环境中起支撑作用而彼此之间相对独立,并不存在业务关系的

Les deux codes ci-dessus doivent être testés, mais手工测试更适合测业务逻辑,因为这部分人来学习起来要比交给自动化容易。

Raison: Le
code de base peut être plus efficace avec des tests automatisés, tels que l'achat et l'achat via Yu'ebao, et en s'appuyant sur l'amarrage avec la banque et nous pour savoir si la facture est arrivée ou non. , Plus adapté aux tests manuels.

Analyse de scène:

Lors du test. On constate que le projet a un cycle économique long et peut être énorme. Vous pouvez introduire des tests automatisés, puis examiner la structure du projet. Certaines choses de base fonctionnelles, telles que la connexion et la passation d'une commande, peuvent être transférées à l'automatisation.

Outils de test automatisés WEB courants:

Insérez la description de l'image ici
Outil de test automatisé standard-QTP
◆ QTP est un outil de test automatisé de régression qui se concentre sur les fonctions , de nombreux plug-ins sont fournis.
◆ Le langage de script pris en charge par QTP est VBScript, qui est beaucoup plus confortable pour les testeurs. Après tout, VBScript est un langage lâche, non strict et largement populaire.

◆ Haute disponibilité de QTP:
1. Prise en charge de l'enregistrement et de la lecture
2. Prise en charge du mode de niveau inférieur (prise en charge du clic, clic du pixel)
3. L'éditeur QTP prend en charge deux vues: le mode Mot-clé et le mode Expert (possède son propre éditeur séparé , Mode mot-clé le plus utilisé)

QTP prend en charge C / S et B / S, et la déclaration est relativement simple

Processus d'enregistrement de script:
Insérez la description de l'image iciInsérez la description de l'image iciInsérez la description de l'image ici

Insérez la description de l'image ici

Sélénium (WebDriver)
Comparez avec QTP pour comprendre les caractéristiques et les avantages et les inconvénients des deux.

Prix:
Selenium est un outil de test automatisé open source, mais QTP est une version commerciale et il est cher.

Domaines d'application:
Selenium prend uniquement en charge les tests de pages Web, tandis que QTP prend en charge non seulement les tests d'interface Web, mais également les tests côté client.

Fonction: La
fonction d'enregistrement QTP prend bien en charge. Le taux de réussite de l'enregistrement et de la lecture QTP est très élevé et le taux de réussite du sélénium est très faible.

Fonction d'édition de script: les personnes
familiarisées avec java, python, etc. comme le sélénium et familières avec VBScript peuvent aimer QTP

Capacité de traitement du framework: le
support QTP est très flexible en termes de pilotage de données. Le
sélénium de script d'automatisation piloté par les données peut être complété par des paramètres simples . (Se peut mieux construire ce cadre en programmant par lui-même)

Outils de test automatisés courants - UFT (rien de nouveau)
◆ UFT (Unified Functional Testing)
◆ Qu'est-ce que l'UFT
◆ UFT est le nouveau nom de QTP et s'appelle Unified Functional Testing Framework. Les nouvelles fonctionnalités sont les suivantes:

  1. Reconnaissance intelligente des images Insight La reconnaissance d'
    images a toujours été l'un des obstacles à nos tests automatisés. Contient une certaine automatisation de l'automatisation du jeu, la dynamique du flash.
    (Uniquement pour trouver des éléments basés sur l'image puis pour opérer)
    2. Débogage multi-script
  2. Points de vérification de texte PDF
    Désormais, UFT peut reconnaître les fichiers PDF et les comparer directement, et même insérer des points de vérification de texte. (Comparatif insipide)
    4. Prise en charge open source CI
    5. Prise en charge des appareils mobiles (mais les tests d'automatisation mobile ont leurs propres outils)

Outils de test automatisés communs-RFT
RFT (IBM Rational Functional Tester)
IBM est un outil de test automatisé adapté aux tests fonctionnels et aux tests de régression . Technologie orientée objet pour Java, .NET et enregistrement et lecture basée sur des applications Web.
◆ Parce que les fonctions d' enregistrement et de lecture dépendent trop de l'environnement dans lequel le programme s'exécute.
◆ Par conséquent, davantage d'équipes de test utilisant l'outil ont adopté leur propre méthode de script manuel pour améliorer la lisibilité et la maintenabilité du script

Structure du framework: possède sa propre architecture en couches
1. Les scripts RFT peuvent être classés en AppObjects, Tâches et Testcases
2. AppObjects: définir les éléments sur la page
3. Tâches: définissez des tâches qui peuvent être unitisées et réutilisables et appelez les éléments définis dans AppObjects.
4. Cas de test: un cas est écrit sous forme de script et chaque scénario de test peut être écrit sous forme d'un ou de plusieurs scripts. Chaque script appelle uniquement les tâches réutilisables définies dans Tâches.

Diagramme de fonctionnement de la structure du RFT:
Insérez la description de l'image ici
Pourquoi la portée de la diffusion et de l'utilisation du RFT n'est-elle pas si grande?
1. Il existe peu de documents d'aide et de tutoriels, et ce n'est pas systématique. L'interface API fournie n'est qu'un document de description, pas comment utiliser le document; quelques exemples sont fournis.
2. Les exigences environnementales sont relativement élevées, au moins 1 Go de mémoire est requis pour une utilisation fluide et la carte est plus lente lorsque la mémoire 512 Mo est utilisée.
3. Le paramétrage ne prend en charge que l'utilisation de fichiers au format Xm | pour stocker les données de test.
4. La vitesse de lecture est extrêmement lente.

Outils de test automatisés courants-WINRUNNER
L'ancienne génération de frameworks de test automatisé est un mode de test automatisé qui peut enregistrer-rejouer-modifier-modifier plus tôt. Semblable à QTP, il utilise également la bibliothèque de ressources pour stocker les contrôles. Avant 2006, il était l'outil de test automatisé le plus utilisé dans l'industrie du test.
En 2006, Mercury a été acquis par ** HP, et maintenant Winrunner a disparu de la famille de produits HP. ** Outre les raisons de la mise en œuvre par HP de QTP, le mode qui prend uniquement en charge le langage C a non seulement atteint sa prévalence à l'époque, mais a également entravé sa propre évolutivité .

Un nouveau type d'outil de test automatisé: Sikuli
Outil de test basé sur la reconnaissance d'image
◆ Technologie de programmation graphique innovante
Sikuli est une nouvelle technologie de programmation graphique publiée par l'équipe de recherche du MIT (MIT). Il est basé sur la technologie de récupération d'image et fournit un ensemble de langage de script et un environnement de développement intégré basé sur Jython (une implémentation complète du langage python en java, qui prend en charge du code Java comme python). (Que ce soit en b / s, c / s, je prends en charge les images), les
utilisateurs peuvent utiliser la capture d'écran pour s'incliner directement avec les éléments de l'interface graphique pour terminer l'opération interactive.

◆ Script
Sikuli L'écriture de script de Sikuli suit la spécification de grammaire Python, qui fournit elle-même une variété de classes et de méthodes personnalisées.
Sikuli est basé sur Jython et son code principal est écrit en Java.
◆ Un exemple simple d'ouverture automatique du navigateur Firefox et de connexion à Gmail pour voir rapidement l'unicité du script Sikuli

Le script contient des images:
j'ai pris une capture d'écran sur ma machine, qui peut ne pas être la même que celle de quelqu'un d'autre
Insérez la description de l'image ici

Exigences de sélection d'outils de test automatisés

◆ Open source gratuit
◆ Flexible et simple à utiliser
◆ Facile à entretenir dans les cas d'utilisation ultérieurs
◆ Prise en charge de plusieurs langues
◆ Facile à intégrer avec le cadre de tests unitaires
◆ Peut prendre en charge plusieurs navigateurs en même temps, prendre en charge le démarrage à distance d'autres serveurs Hautement réutilisable
◆ Le code peut être contrôlé indépendamment, pour la construction Les cadres, plates-formes, etc. présentent des avantages irremplaçables

Publié 82 articles originaux · loué 7 · visites 4166

Je suppose que tu aimes

Origine blog.csdn.net/sunshine612/article/details/105452801
conseillé
Classement