Alipay non-invasive open source Android outil de test automatisé Solo

Solo (SoloPi) est une technologie sans fil Alipay open-source, outil non invasif pour les tests automatisés d'Android, Beta a enregistré la lecture, les tests de performance, une commande de la machine trois fonctions principales, peuvent gagner un temps précieux pour le développeur de test.

Cet article est l'explication de la profondeur de l'équipe SoloPi sur le projet,

Auteur: Qiaorui Kai, fourmis robe d'or avancée Ingénieur de développement sans fil

avant-propos

Ces dernières années, avec le développement rapide de l'Internet mobile, la technologie de tests mobiles a également fait des progrès considérables, dès le début des scripts de test automatisés autonomes, à la lecture d'un enregistrement, reconnaissance d'image, aux techniques plateforme de tests de cloud intègrent l'application de gestion des besoins réels profondeur et l'innovation, afin de tester l'efficacité est augmentée encore et encore.

Cet article décrit un paiement sans fil, non-invasive, sans Android Racine du programme de test spécial trésor Solo mis en place sur le côté mobile. La manipulation directe du téléphone, vous pouvez automatiser la fonctionnalité, la performance, les tests de compatibilité et de stabilité travail.

Mobile Test 1.0 fois

Mobile Test 1.0 fois, il peut également être appelée la période d'exploration. Fatigué du jour au manuel d'utilisation de jour, la façon d'améliorer l'efficacité le test est devenu le test en mouvement question la plus importante, au cours de cette période, en plus des outils de singe, UiAutomator, instruments et autres officiels, l'industrie est également apparu un certain nombre de open source exceptionnelle outil de test automatisé / cadre, en fonction de la capacité d'automatisation d'entraînement, la vérification peut être atteint non seulement les fonctions de base peuvent également être combinés programme de collecte des performances, des algorithmes traversal pour automatiser les différents tests spéciaux. A ce stade, une forme courante de tests automatisés est de déployer un environnement de test sur une seule machine ou quelques stations locales PC, utilisez d'autres outils pour parvenir à une intégration continue Jenkins.

ère Mobile Test 2.0

Avec le développement continu de la technologie d'essai, et bénéficier de STF open source, l'industrie a commencé à tester le concept de la plate-forme cloud, l'équipement réel de la machine, la gestion des tâches, le cadre de l'automatisation des tests et des programmes spéciaux emballés dans la plate-forme en tant que service, de faire pour utilisateurs une expérience de test unique. D'autre part, l'introduction de débogage à distance, la technologie de planification de l'équipement a grandement amélioré l'utilisation de l'équipement, le manque de testeurs plus besoin de matériel d'essai ou de temps test de file d'attente des tâches à craindre. plate-forme de test pour les utilisateurs de nuages, à ce stade, de tester les formes courantes sont: pour développer des scripts de test sur un PC local, puis télécharger sur la plate-forme de test de nuage pour effectuer le dernier rapport d'essai peut être vu dans la plate-forme, le processus de test est simple et claire.

Mobile Test 2.0+

Tout en conservant la dans l'ère des essais 2.0+ mobiles sont souvent ne fournissent plus mentionné ci-dessus « test de nuage » en dehors de jeu, la technologie de test un gadget indépendant, il est d'apporter une solution plus complète, par exemple, pour fournir aux utilisateurs un environnement IDE personnalisé, combiné avec la lecture enregistrement, la technologie de reconnaissance d'images, les utilisateurs ne peuvent avoir besoin de faire une tente simple, faites glisser pour compléter le développement de scripts de test. D'autre part, en raison des contraintes de l'environnement de bureau, les conditions matérielles, de plus en plus de testeurs espèrent lancer un test directement sur le côté mobile, de sorte que le test mobile « cartographie mobile. » Bien sûr, à la fois le nuage, côté IDE, ou l'échange de capacité terminal mobile doit être fait, à savoir « multi-pass multi-terminaux », de manière à rendre le test des solutions plus flexibles pour plus de scènes.

Android-conduit spécial solutions de test sans fil: Solo

Le concept de « multi-pass multi-terminaux » est relativement large, seul article ne peut pas être expliqué clairement, donc ce qui suit mettra en évidence afin de répondre à l'ère « Mobile 2.0+ », nous nous rendons compte à la fin d'un mobile sans fil, non-invasive, racine Android gratuit du programme de test spécial Solo. La manipulation directe du téléphone, vous pouvez automatiser la fonctionnalité, la performance, les tests de compatibilité et de stabilité travail.

Architecture globale

Dans ce mode de réalisation, la couche inférieure dépend principalement de la « BAD sans fil, l'accessibilité du système, la technologie de reconnaissance de débogage et de l'image Chrome », ci-après introduiront leur scénario d'application spécifique. Pendant ce temps, sur la base du sous-jacent compter sur nous empaqueter un ensemble de compétences de base, « contrôle de positionnement, événementiel, performance capture et l'injection de dépendance » consistant et d'obtenir l'enregistrement, la lecture, le traitement de données et d'autres capacités de service public dans la couche de service. Dans la partie supérieure du cadre, la logique d'interaction de liaison Interface Colis une entrée de chaque fonction.

BAD sans fil

Comme nous le savons tous, Android pour l'automatisation, la capacité à exécuter adb shell est la base de tout.

Sur le PC, fourni par le serveur de la BAD client Android SDK BAD en communication avec le même fonctionnement sur le PC, puis par le serveur de la BAD ADBD dispositif de communication USB situé à travers. Pour parvenir à un ensemble de solutions sans fil, il faut se débarrasser de la dépendance sur le câble USB. Heureusement, le système fournit également un mode de connexion de la BAD à base de Socket applications, comme cela est le cas, alors seulement besoin de communiquer selon un protocole de communication port ADB 5555 à la fin de la machine afin d'obtenir la capacité d'exécuter la coque de la BAD.

Il existe déjà un certain nombre de protocoles de communication de la BAD Java mettent en uvre des projets open source, comme AdbLib, ils encapsulent un ensemble de services de communication de débogage BAD, et peut remplacer le rôle du PC BAD Server. Nous applications Solo intégrées dans la bibliothèque open source AdbLib emballé comme un ensemble d'outils d'exécution de la commande de la BAD, a jeté une base solide pour la réalisation d'une variété de capacités de test ultérieures spéciales Solo. Nous commencerons à présenter Solo de plusieurs fonctions essentielles.

Enregistrement et de lecture

Enregistrement et fonction de lecture pour regard précis sur AccessibilityService, ChromeDevToolsProtocol, reconnaissance d'image trois modes, la lecture peut être réalisé localement sur l'appareil, il peut également convertir script pour cadres Appium / Macaca comme plate-forme de test pour l'amarrage du nuage. En outre, le mode de réalisation pour réduire le coût de l'entretien, à la fin nous fournissons autre mode de réalisation édition, la fonction de contrôle de flux.

exécution

Pendant l'enregistrement, Solo intercepte l'opération, l'opération pour identifier l'emplacement de l'utilisateur de l'utilisateur, le contrôle en évidence l'opération en cours, l'enregistrement du type de fonctionnement, l'utilisateur se fait actuellement, après chaque étape de l'opération, le type d'opération et le contrôle de chaque cible types d'informations sont enregistrées. Ici, les informations de contrôle comprend des informations de commande de base ID, et le texte, et la disposition relative, l'information thématique.

Pendant la lecture, Solo sera résolu une par une les données enregistrées avant, par l'algorithme de recherche intelligent, intégré une variété d'attributs, ciblage des contrôles, après avoir trouvé les contrôles, sera l'action appropriée, comme un clic, glisser et ainsi de suite. Après toutes les étapes, nous montrerons les résultats de cette lecture, y compris journal, des captures d'écran et d'autres informations, telles que résumées dans cette lecture.

Trouvez des contrôles la capacité de

Pour une application traditionnelle autochtone, obtenu par UiAutomator propriété de décharge est suffisante pour obtenir automatisé. Cependant, avec le développement constant de la capacité dynamique du terminal mobile, de plus en plus d'applications en utilisant le « natif + H5 / applet » Ce programme de développement hybride. Compte tenu de l'évolution rapide de l'industrie des jeux mobiles au cours des dernières années, la demande pour les tests automatisés de jeux mobiles de plus en plus. Pour adapter à une variété de scénarios possibles, Solo propose trois modèles de recherche:

  • La première option Inutile de dire que le noyau est généré en fonction de l'arborescence de AccessbilityService de contrôle actuel et ID d'enregistrement, le texte et d'autres propriétés pour Native Scène
  • Le second schéma est basé sur le protocole de mise au point Chrome, peut être obtenue en injectant js mise en page et le positionnement des idées et l'accessibilité des propriétés de chaque élément, le contrôle de cet ensemble de programmes est cohérent. Convient pour H5 / applets scène.
  • Le troisième mode de réalisation est un programme d'appariement d'images, Solo met en uvre un ensemble de fonctionnalités que l'image, la mise en correspondance de modèle de liaison, les algorithmes correspondants de fonction, et faire des réglages et de l'adaptation à la fin. Convient pour l'automatisation des scènes de jeu. En outre, Solo le programme actuel, la capacité d'adaptation de l'image en tant que plan de secours sera les deux premières méthodes de ciblage pour améliorer encore la précision du contrôle recherche.

La capacité de lecture

Par Solo enregistré avec régulièrement stockées sous la forme de JSON up, cas d'utilisation non seulement comme une lecture directe à la présentation vidéo localement sur l'appareil peuvent également être convertis en Appium, Macaca et d'autres cadres tests automatisés traditionnels avec des cas par l'analyseur Solo le script et facilement ouvrir la plate-forme de test de nuage. De plus, grâce au texte de saisir et de reconnaissance d'image, Solo également réalisé dans le côté enregistrement à nouveau avec mode Android, le script peut être généré simultanément dans Android, iOS capacité de lecture amphidrome.

plus de fonctionnalités

Solo mode de réalisation est également fourni à l'étape d'insertion, la suppression, la modification et autres fonctions d'édition avec le mode de réalisation peut réduire efficacement les coûts de maintenance du cas d'utilisation. En outre, Solo introduit également une des conditions de contrôle des processus de boucle, si un arrangement raisonnable des cas d'utilisation, le script peut facilement se répéter les opérations d'outil ou nécessitent un script de test de stabilité violence de lecture.

La lecture plus grande capacité à enregistrer comprend également la possibilité de combiner des données les cas d'utilisation des solutions instables de Mock, la capacité d'obtenir grâce à des tests de performance et ainsi de suite.

Une commande de la machine

Dans divers tests spéciaux, les tests de compatibilité est le plus de temps un, les testeurs doivent se concentrer sur une variété de version du système, les principaux fabricants de téléphones mobiles, différents types d'écrans, etc., vous voulez par des tests purement manuelle pour assurer la compatibilité coût des tests de qualité est très élevée.

la capacité de lecture d'enregistrement Solo sur la base de la réalisation d'un ensemble de solutions testées compatibilité. Dans les scènes enregistrées la lecture, nous sommes d'abord dans sur un seul appareil enregistre les actions de l'utilisateur, puis réaliser la lecture sur un appareil en fonctionnement. Si la scène étendue à plusieurs appareils, vous pouvez obtenir un contrôle de plusieurs appareils via un seul appareil, nous avons mis cette fonction est appelée « une commande de la machine. » Plus précisément, est relié à la machine hôte de la prise établie, transmet alors le fonctionnement de l'utilisateur sur l'ordinateur hôte en temps réel à chaque esclave, l'opération de lecture est terminée de la machine.

Un environnement contrôlé de la machine à construire, téléphone main plus souple après l'installation Solo, par une construction simple d'une opération conjointe pour achever le déploiement. Une commande de la machine correspondent aux modèles traditionnels actuels du marché et ROM, et encapsule des tests pour améliorer l'efficacité des raccourcis, tels que l'installation de l'application, le nettoyage des données, et ainsi de suite pour afficher les informations de l'appareil.

Test de performance

Mentionné test spécial, il faut mentionner le test de performance. Ces dernières années, l'utilisation du téléphone cellulaire est devenu la vie quotidienne des gens, partie intégrante de la présente demande aussi l'expérience d'une plus grande exigence. Afin de donner aux utilisateurs une expérience « Soyeux », juste il ne suffit pas pour réaliser la fonction, et des tests de performance est de créer des applications de haute qualité un élément indispensable. Cependant, pour réaliser le test de performance n'est pas très facile, d'une part, des tests de performance a un certain seuil, souvent besoin de développer un script pour atteindre, mais aussi pour faire face à toutes sortes de problèmes de compatibilité. D'autre part, pour obtenir le plus d'indicateurs de performance sont certains programmes de tests de base, il est difficile de trouver des problèmes profonds. En réponse à ces problèmes, Solo parvenir à un ensemble d'outils de test de performance. L'obtention de mesures de performance comprennent classiques, les calculs qui prennent du temps et se déplacer en réponse Phare trois fonctions.

Obtenir les spécifications générales

Solo soutenir CPU traditionnels indicateurs, mémoire, images par seconde, le trafic et d'autres accès à temps réel, tout en soutenant les données de performance enregistrées et stockées par les formulaires de déclaration locale montrent. Solo fournit également la fonction de téléchargement de données, les données peuvent être envoyées à un serveur pour un traitement ultérieur. Ensemble complet d'outils de performance prennent en charge déclenchement manuel diffusé et le déclencheur et le test automatisé peut facilement passer à travers.

Temps de réponse calcul consommation

En plus d'obtenir des indicateurs de performance réguliers, Solo fournit également un temps de réponse consommer des fonctions de calcul. Comme nous le savons tous, une méthode commune à la consommation de temps de réponse de calcul est basé sur le code Buried ou le journal système (comme le temps activityDisplayed), mais les résultats de cette méthode calculée pour le chargement asynchrone, il sera interface plus pratique et facile à utiliser de la perception d'un écart relativement important.

Solo capacité d'enregistrement en fonction de cadrage de l'écran permet une expérience utilisateur calculer le temps de réponse proche du programme. Plus précisément, après l'enregistrement de l'écran d'ouverture, Solo obtiendra la coquille de la BAD basée sur des événements d'événement cliquez sur la commande écran, comme un point de départ pour calculer le temps de réponse long, lorsque la fin de l'écran d'enregistrement, Solo transmettra vidéo inverse de sont comparés pour trouver le point de temps pour stabiliser l'interface, et que la fin du calcul, la soustraction est à la fois une réponse de temps.

phare mobile

H5 / applet technologie dans la proportion d'applications mobiles de plus en plus, comment tester les performances de ces applications est devenue un nouveau sujet. Le contact avec la performance de fin de devant les étudiants savent, Lighthouse est un outil de test de performance de fin d'avant, mais il ne peut pas être appliqué directement sur le téléphone. Le Solo faire est basé sur le protocole CDP dans le client met en uvre un ensemble d'outils de test de performance phare qui peuvent obtenir des performances de démarrage H5 / page applet, consommation des ressources, la qualité des demandes, la qualité JS, JSAPI cas d'appel informations de la page, et construit plus de 30 meilleures pratiques de développement frontaux, visant à découvrir des problèmes de performance grains fins.

Implémentation spécifique, et l'application du test est d'établir la base Solo établir une communication de protocole Websocket CDP, à l'écoute de lancer une demande de page, recevoir des données, telles que l'événement de rappel commence le chargement et l'erreur Collect, Trace et d'autres données. Suivez ensuite les performances de démarrage, des ressources consommation de courant, la qualité requise, la qualité JS, appel JSAPI cas où les informations de la page 6 grandes dimensions classer et organiser les données, puis en déterminant les résultats collectés intégrés dans les règles, les rapports finaux et les interfaces dans le spectacle.

plus

En tant que programme spécial d'essai complet, en plus de la lecture enregistrée a été mentionné précédemment, une commande de la machine, des tests de performance, les données simulées Solo est également fourni, en appuyant sur la performance, la simulation de réseau, des fonctions intelligentes de singe.

Lire l'original: "Link"

Plus de 600.000 utilisateurs de téléphones mobiles de participer à TM à Suning 618 Faits saillants
Précédent
Bulls double de foudre Jack: Je socket a changé la mienne pendant la saison des pluies tranquillement
Prochain
« UI » « nouvelles » 190618 « De Luna Hôtel » se magnifique hôtel UI président excitant « nouvelle attraction »
CACHE il y a tellement de, font?
reconnaissance Raspberry Pi 4 pour alimenter la conception USB-C Interface défaut
IBM Red Hat à acquérir est une erreur
14 Les scientifiques au détriment de la vie de haute mer sumergibles ...... Pourquoi si important?
Jingdong ordinateur numérique 618 a marqué le début d'une poussée de croissance de trois nouvelles tendances de consommation souligner la vitalité de l'économie nationale
Le miracle de l'électricité au monde! Comment la Chine est d'avoir 1,4 milliard de personnes ont accès à l'électricité?
musique nuage Netease étagères App, inconnu raison
Station 5G de base: vous ne pouvez pas me voir, je suis de votre côté
Shanxi Fen: l'acquisition de 51% du capital détenu par le groupe Bao Quan réduire les opérations entre apparentés ne fait que commencer
[Strokes] China Coal Société, Academia Sinica avis de recrutement ouvert (y compris la version anglaise)
NEW YORK a permis de visiter cinq experts de la sécurité réseau, interprétation professionnelle complète pour vous « et d'autres assurances 2.0 »