[RUBY] Des tests plus familiers avec Selenium

Cet article est l'article du 19e jour du calendrier de l'Avent selenium_and_appium 2016.

controll-iloveimg-compressed.gif

introduction

Ceci est le premier post! C'est TEISHISEI! Écrivez sans crainte de malentendus!

Mon entreprise propose de nombreux services différents, et il existe des testeurs pour cela. Pour toujours, vérifiez les liens brisés, léchez toutes les pages pour prendre une pression et marathon jusqu'à ce qu'un événement probable se produise. Selenium automatise ces tests. Plus vous fouillez, plus vous devez automatiser de projets. Maintenant, j'ai besoin d'écrire pour toujours et du code Selenium. Je pensais qu'il fallait aussi l'automatisation. Nous avons cherché un moyen pour tout le monde de construire des tests, même s'ils n'étaient pas des programmeurs. Vous trouverez ci-dessous un résumé des exigences requises.

Nous avons exploré Selenium IDE, Selenium Builder, imacros et une variété d'autres solutions. Chacun avait ses avantages et ses inconvénients, et l'un d'eux avait un mur. Dans le cas des jeux, les boucles sont nécessaires dans les marathons, l'endurance est restaurée, et if est indispensable en raison des demandes accumulées, et enfin il est nécessaire d'apprendre à utiliser les déclarations if. Si c'est une étape qui ne correspond pas à la sortie, une erreur se produira, et j'en ai marre d'avoir des étapes à couper Si ce n'est pas multi-navigateur, ou si ça va, vous ne pouvez pas supprimer toutes les étapes à la fois, ou vous devez cliquer trois fois pour appuyer sur le bouton de suppression. Voulez-vous envoyer une demande à une API externe? Les demandes ont augmenté.

J'ai donc décidé de le faire. Son nom est Selenium Code Builder Oui, nous avons réaménagé les roues. Loin du réaménagement, il n'y a aucun moyen de le faire dans une extension. Comme son nom l'indique, il construit ** Code **. Écrivez le code de test et exécutez-le en Ruby ou Python. (Étant donné que Windows est plus facile à construire dans l'environnement python, il est également possible de générer une sortie avec python.)

Bien sûr, je ne pense pas que ce soit meilleur que d'autres outils, mais il a l'avantage de pouvoir rapidement rattraper et mettre à jour les demandes. Je suis satisfait de la convivialité et de la capacité d'incorporer le traitement if et loop. Cette fois, ce sera open source, donc j'espère que plus de gens entreront en contact avec Selenium, donc je vais le partager.

Aperçu

Selenium Code Builder GitHub

Une extension Chrome qui assemble et génère le code de test du navigateur à l'aide de Selenium avec une interface graphique. Le code de test de sortie est compatible avec les langues et navigateurs suivants.

Langue

Navigateur exécutable

Comment installer

Je suis désolé, ce n'est pas encore une extension publique, vous devrez donc la créer manuellement.

$ npm install -g bower gulp
$ npm install
$ bower install
$ gulp build

--Ouvrir Chrome --Menu

Que puis-je faire?

Enregistrer les opérations du navigateur

Vous pouvez enregistrer le fonctionnement du navigateur. Les opérations qui peuvent être enregistrées sont les suivantes.

Enregistrer et charger des fichiers (json), convertir en Ruby ou Python

Vous pouvez enregistrer et charger des fichiers (json) et les convertir en Ruby ou Python. Lors de la conversion, vous pouvez sélectionner Chrome, Firefox, la version Android et le navigateur.

Étapes qui peuvent être définies

Lié à l'URL

--Aller à la page spécifiée

Élément DOM lié

En cliquant réellement sur l'élément, le sélecteur css est acquis et l'élément est jugé.

--Cliquez sur l'élément --Double cliquez sur l'élément

Concernant le navigateur

--Exécuter javascript

Ruby et Python liés

--Exécution du code --Dormir

Test lié

Autres fonctions

à la fin

L'utilisateur a essayé d'abaisser le seuil autant que possible parce qu'il n'était pas un programmeur, mais il y en avait encore qui ne pouvaient pas être effacés. Je suis heureux d'avoir pu faire savoir qu'il existe une option appelée Selenium, qu'il y a une utilisation qui n'est pas un cadre de test, et j'ai pu réduire le nombre d'étapes. J'espère qu'E2E continuera à se développer à l'avenir.

Le prochain article, c'est aussi moi. Désolé pour l'article ennuyeux, mais restez en contact!

Recommended Posts

Des tests plus familiers avec Selenium
Grattage au sélénium
Grattage au sélénium ~ 2 ~
Grattage avec du sélénium
Commençant par Selenium
Grattage réussi avec Selenium
Créer des couches Lambda avec Lambda
Automatisez les tests d'interface utilisateur avec l'API Selenium | Exploration de sites Web avec python
Rendre les indicateurs de performance plus visibles avec PyTorch et scikit-learn
Créez un Yuma avec Discord.py
ScreenShot avec Selenium (édition Python)
Tester Elasticsearch avec python-tcptest
Grattage avec du sélénium [Python]
Créer des diapositives avec iPython
Grattage au sélénium en Python
Grattage avec Selenium + Python Partie 1
Créez des boutons de type SF avec Kivy
Automatisez les tests python avec CircleCI
Python: travailler avec Firefox avec du sélénium
Grattage avec du sélénium en Python
Rendre Jupyter Lab accessible à distance
Rendre avec la syntaxe facile
Créez Puyopuyo AI avec Python
Faites une loterie avec Python
Pré-essayez les tests locaux avec Travis
Souvenirs de combats avec Selenium
Grattage avec Selenium + Python Partie 2
Essayez Selenium Grid avec Docker
Test des requêtes HTTP avec ESP-WROOM-32
Gratter la page i-town avec du sélénium
Faire un feu avec kdeplot
Créer un chatbot Slack avec Errbot
J'ai essayé de faire un processus d'exécution périodique avec Selenium et Python