Vérifions et formons statiquement le code du test automatique E2E écrit en Python [VS Code]

Contexte

Ceux qui écrivent le code du produit ont généralement le format et la vérification statique au moment de la sauvegarde du côté de l'éditeur pendant le développement.

D'autre part, les testeurs et les ingénieurs de test défieront le test automatique opéré par GUI! J'ai tendance à m'en sortir quand cela le devient, alors j'ai essayé de le réveiller dans l'article après l'introduction.

Ce que vous pouvez faire en référence à cet article

Lors de l'écriture de code de test automatisé, chaque fois que j'enregistre

L'état peut être réalisé.

En conséquence, lorsque plusieurs personnes codent le test automatisé, l'apparence du code de test automatisé écrit par chacune est unifiée dans une certaine mesure et les lignes inutiles sont réduites, ce qui facilite la lecture et l'écriture.

Cette fois, nous le définirons de manière à ce qu'il adhère (fondamentalement) au standard de codage Python PEP8.

environnement

procédure

1. Installez ce dont vous avez besoin

Exécutez la commande suivante pour installer flake8 et autopep8.

> pip install flake8
> pip install autopep8

2. Paramètres du code VS

Ajoutez ce qui suit aux paramètres existants décrits dans settings.json. Ou, si l'élément existe déjà, écrasez-le.

{
    "editor.formatOnSave": true,
    "python.linting.pylintEnabled": false,
    "python.linting.enabled": true,
    "python.linting.flake8Enabled": true,
    "python.linting.flake8Args": [
        "--ignore=E501"
    ],
    "python.formatting.autopep8Args": [
        "--max-line-length=200",
    ]
}

--ʻEditor.formatOnSave: s'il faut formater automatiquement lors de l'enregistrement d'un fichier --python.linting.pylintEnabled: Indique s'il faut utiliser pylint --python.linting.enabled: s'il faut pelucher --python.linting.flake8Args: Paramètres à passer à flake8. Cette fois --ignore = E501 évite que" la ligne est trop longue "de E501 indique --python.formatting.autopep8Args: Paramètres à transmettre à autopep8. Cette fois, --max-line-length = 200` définit la limite de saut de ligne à 200 caractères

Si vous pouvez le faire jusqu'à présent, lorsque vous enregistrez le code avec VS Code, il formate automatiquement et signale les problèmes.

3. Voir l'indication

Le contenu signalé est affiché dans l'onglet "Problème" en bas de l'écran.

flake8-and-autopep8.PNG

S'il n'apparaît pas, veuillez cliquer sur la marque x ou △ en bas à gauche.

flake8-and-autopep8_2.PNG

Modèles qui posent problème avec le code de test automatique pour les tests système

Si vous pouvez écrire le code de test automatisé selon les mêmes règles que l'équipe de développement de produit, cela est pratique car davantage de personnes peuvent maintenir le test automatisé.

Cependant, dans certaines situations, il est difficile d'écrire un code de test automatisé conformément aux normes de codage des produits.

Par exemple, la limite du nombre de caractères sur une ligne. Au moment du développement, s'il est trop long, il est nécessaire d'insérer un saut de ligne approprié. Dans autopep8 utilisé cette fois, les sauts de ligne sont automatiquement définis pour contenir 79 caractères par défaut.

Cependant, lorsque j'écris un test automatisé dans Selenium et que je dois spécifier un xpath long, il est plus facile de voir s'il est étiré horizontalement plutôt que étrangement cassé.

Par conséquent, cette fois, la limite du nombre de caractères dans une ligne a été modifiée à 200. Veuillez ajuster ici à votre goût.

référence

Recommended Posts

Vérifions et formons statiquement le code du test automatique E2E écrit en Python [VS Code]
Mesurez la couverture de test du code python poussé sur GitHub.
Vérifiez le comportement du destroyer en Python
Je veux formater et vérifier le code Python à mon goût sur VS Code
Je veux écrire en Python! (1) Vérification du format de code
Décomposons les bases du code Python de TensorFlow
Utilisons les données ouvertes de "Mamebus" en Python
Vérifiez la nature atrophique de la distribution de probabilité en Python
[Apprentissage automatique] "Détection d'anomalies et détection de changement" Dessinons la figure du chapitre 1 en Python.
Vérifiez le temps de traitement et le nombre d'appels pour chaque processus avec python (cProfile)
Code de test pour vérifier les liens brisés dans la page
Vérifiez le fonctionnement de Python pour .NET dans chaque environnement
Comparaison du code de moyenne mobile exponentielle (EMA) écrit en Python
J'ai essayé de programmer le test du chi carré en Python et Java.
Le processus de création et d'amélioration du code Python orienté objet
[Astuces] Problèmes et solutions dans le développement de python + kivy
Déterminez le format de la date et de l'heure avec Python et convertissez-le en Unixtime
J'ai comparé le temps de calcul de la moyenne mobile écrite en Python
[Python] Réduisons le nombre d'éléments dans le résultat dans le fonctionnement de l'ensemble
Comment vérifier la taille de la mémoire d'une variable en Python
J'ai écrit le code pour écrire le code Brainf * ck en python
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
Résumons le degré de couplage entre les modules avec du code Python
Obtenez le titre et la date de livraison de Yahoo! News en Python
L'histoire de Python et l'histoire de NaN
Formater automatiquement le code Python avec Vim
Vérifiez et déplacez le répertoire en Python
Ecrire le code de test du sélénium en python
Configurer un serveur SMTP factice avec Python et vérifier le fonctionnement de l'envoi depuis Action Mailer
Analysez le code source de votre propre moteur de recherche simple écrit en Python avec l'outil de visualisation de code "SOURCE TRAIL"
Comparer la grammaire de base de Python et Go d'une manière facile à comprendre
Exemple de code pour obtenir oauth_token et oauth_token_secret de l'API Twitter en Python 2.7
Code Python pour former et tester avec Custom Vision of Cognitive Service
Ouvrez un fichier Excel en Python et coloriez la carte du Japon
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
Lecture de code de faker, une bibliothèque qui génère des données de test en Python
Test de stress avec Locust écrit en Python
Ecrire le test dans la docstring python
Vérifier et recevoir le port série en Python (vérification du port)
Vérifiez si l'URL existe en Python
[Python3] Réécrire l'objet code de la fonction
Vérifiez le chemin du module importé Python
Principes de base pour exécuter NoxPlayer en Python
Rechercher et vérifier la matrice inverse en Python
À la recherche du FizzBuzz le plus rapide en Python
[Python] Récupère le code de caractère du fichier
Obtenir la liste de codes EDINET en Python
Projet Euler # 1 "Multiple de 3 et 5" en Python
python setup.py tester le code en utilisant le multiprocessus
Créer en Python sans fichier image factice dans Django et tester le téléchargement de l'image
Comment sensibiliser VS Code à l'environnement venv et à ses avantages
traitement (python) Diagramme les coordonnées de la liste Spécifiez le nombre de fois dans draw ()
J'ai comparé la vitesse des expressions régulières en Ruby, Python et Perl (version 2013)
Affiche automatiquement les paroles de la chanson en cours de lecture sur iTunes en Python
Jouons avec Python Receive et enregistrez / affichez le texte du formulaire de saisie
Divise la chaîne de caractères par le nombre de caractères spécifié. En Ruby et Python.
[AWS] Lançons un test unitaire de la fonction Lambda dans l'environnement local
Liste des principales distributions de probabilité utilisées en apprentissage automatique et statistiques et code en python
Obtenez le dernier élément du tableau en fractionnant les chaînes en Python et PHP
Sortie du nombre de cœurs de processeur en Python