Un autre didacticiel de développement WordPress: comment automatiser votre flux de travail

Un autre didacticiel de développement WordPress: comment automatiser votre flux de travail

Un autre didacticiel de développement WordPress: comment automatiser votre flux de travail
СОДЕРЖАНИЕ
02 июня 2020

Tutoriel de développement WordPress sur l'automatisation


En tant que développeur WordPress, rester à jour avec les techniques et tendances récentes peut être intimidant. Prenez l’automatisation, par exemple – êtes-vous au courant de ce qui peut être fait en termes d’automatisation de votre flux de travail? Pas assez? D’accord, cet article peut vous aider. C’est un peu différent de votre tutoriel de développement WordPress habituel, cependant. Il se concentre sur l’automatisation de tout ce qui peut être automatisé lorsque vous travaillez sur votre prochain projet WordPress.

Le tutoriel de développement WordPress suivant passe par les étapes impliquées dans un cycle de développement typique. En cours de route, nous proposerons des solutions et des outils que vous pouvez utiliser pour automatiser certains processus afin de réduire vos délais de publication.

Avantages de l’automatisation

Avant de passer à l’automatisation, voyons pourquoi vous devriez quand même automatiser certains processus.

  • ⏲️ Automatisation fait gagner du temps, et donc de l’argent. Imaginez le temps gagné si vous synchronisez votre version de développement local de WordPress avec le serveur en un seul clic.
  • �� Ensuite, l’automatisation des étapes redondantes aide à éviter les erreurs. Au cours de la synchronisation de vos modifications avec les serveurs, vous pouvez télécharger par inadvertance une mauvaise version. Cela conduit à retravailler.
  • ��️ De plus, l’automatisation des différentes étapes de votre cycle de développement aide à la traçabilité. Cela vous aide à déboguer votre code. Par exemple, vous obtenez un journal approprié des modifications qui ont été téléchargées sur un serveur à quelle date..
  • �� Enfin, l’automatisation vous aide se concentrer sur des choses plus importantes comme l’innovation! Si vous n’êtes pas accablé par des tâches redondantes et répétitives, vous avez plus de temps pour les tâches importantes qui nécessitent votre attention.

Ce didacticiel de développement WordPress vous aide à atteindre une plus grande efficacité en découvrant d’abord les étapes redondantes, puis en vous aidant à les automatiser.

Automatisez votre environnement de développement

Imaginez la nécessité de créer manuellement un environnement de développement à chaque fois dans les scénarios suivants:

  • Lancer un projet
  • Passez à une nouvelle machine de développement
  • Avoir un nouveau membre d’équipe

La création d’une liste de logiciels et de commandes est la première étape de l’automatisation. Cependant, l’exécution manuelle de chaque étape prend beaucoup de temps et est sujette à des erreurs. Donc, une telle liste est encore insuffisante pour configurer votre environnement.

Docker est un service qui vous aide à configurer un environnement de développement sur une nouvelle machine en fonction de vos besoins. Docker introduit le concept de conteneurs. Un conteneur est un système pratiquement fermé créé avec votre environnement de développement. Avec Docker, vous ne vous retrouverez jamais dans une situation où quelqu’un a mis à jour un logiciel sur le serveur, et rien ne fonctionne!

docker

Tout d’abord, vous définissez un environnement de développement, qui spécifie exactement ce dont vous avez besoin dans une nouvelle machine. Ensuite, exécutez simplement une commande sur une nouvelle machine pour lancer le processus – c’est aussi simple que cela!

Voici un guide sur configuration de Docker pour WordPress. De plus, voici un fichier de configuration Docker rapide pour WordPress.

Il y a un inconvénient de Docker – si vous utilisez un environnement de développement Windows (comme SQL Server, .NET ou VisualBasic), vous ne pouvez pas l’implémenter à l’aide de Docker.

Contrôle de version avec intégration continue

La prochaine étape de ce tutoriel de développement WordPress sur l’automatisation est de se concentrer sur la gestion du code. Lorsque plusieurs développeurs travaillent sur le même code en même temps, ils utilisent généralement une forme de contrôle de version comme Git ou Mercuriel. Voici un tutoriel de développement WordPress sur contrôle de version.

mercuriel

Lors de l’utilisation d’un logiciel de gestion de code, un développeur peut faire une copie du référentiel central. Ils peuvent apporter des améliorations dans le référentiel et soumettre les modifications à fusionner avec le code d’origine. Les référentiels populaires peuvent avoir des centaines voire des milliers de modifications en une journée. Il peut y avoir divers conflits qui peuvent survenir lorsque le développeur souhaite fusionner le code. Dans le cas le plus extrême, il peut arriver que le temps nécessaire pour résoudre les problèmes pendant la fusion soit supérieur au temps nécessaire pour apporter l’amélioration initiale elle-même.

L’intégration continue consiste à éviter ce scénario en fusionnant fréquemment le travail des développeurs. Cependant, une fusion n’est pas aussi simple qu’il y paraît. Cela implique la compilation et les tests par un développeur avant de valider tout code. En règle générale, un serveur de génération exécute ces vérifications sur le code une fois que le code est poussé vers le référentiel central. Ce processus réduit les reprises, l’une des sources de gaspillage, permettant ainsi d’économiser du temps et de l’argent. La fréquence des tests et de la construction varie, mais de nos jours, ce processus est effectué après chaque validation.

Intégration continue avec Travis CI

travis-ci

Travis CI fournit une version gratuite pour les référentiels open source. Vous n’avez qu’à payer pour vos projets privés. Je vais démontrer un projet sur GitHub dans cet exemple. Une fois que vous vous êtes inscrit sur Travis (je suggère de vous inscrire via GitHub), vous devez effectuer les étapes suivantes pour commencer à construire:

  • Activez vos référentiels GitHub
  • Ajoutez le fichier .travis.yml au répertoire racine de votre référentiel
  • Poussez vers le référentiel pour construire avec Travis

Sur ton Profil de Travis, activer le référentiel que vous souhaitez tester avec Travis.

Voici un exemple de l’activation d’un exemple de raclage Web de référentiel:

Activer les référentiels sur TravisActiver les référentiels sur Travis

Après avoir activé votre référentiel, vous devez ajouter le fichier .travis.yml à votre référentiel. Le contenu du fichier est le suivant:

langue: python
python:
– "2.6"
– "2.7"
# commande pour installer les dépendances
# installer: "pip install -r requirements.txt"

# commande pour exécuter des tests
script: python tests.py

Vous devez spécifier la langue (Python) et ses versions pour tester. Si vous avez des dépendances à installer, vous devez les répertorier dans le fichier requirements.txt. Étant donné que seuls des tests factices sont exécutés dans ce référentiel, la ligne des exigences est ignorée. Si elles ne sont pas commentées, ces exigences sont installées dans l’environnement de génération par Travis avant d’exécuter vos tests. Enfin, la commande qui exécute les tests est spécifiée. Référentiels open source comme e-cidadania avoir des fichiers .travis.yml plus détaillés.

Lorsque vous avez terminé avec le code, validez-le et envoyez-le à GitHub. Vous pouvez afficher les résultats du test sur votre page de référentiel. Un e-mail est également envoyé avec les résultats du test. Vous pouvez également déclencher une autre génération via votre page de profil pour vérifier la génération en temps réel:

Construire le succès sur TravisConstruire le succès sur Travis

Automatisez le développement de thèmes

La prochaine chose à couvrir dans ce tutoriel de développement WordPress inhabituel est le développement de thèmes. Bien que l’utilisation d’un système de gestion de code suffise pour tout code que vous modifiez dans votre répertoire WordPress, les étapes intermédiaires pendant le développement d’un thème peuvent être et doivent être automatisées!

Arrêtons-nous un instant pour énumérer quelques tâches typiques du processus de développement de thème après avoir finalisé les modifications de votre thème:

  • Compiler le code du préprocesseur CSS en CSS
  • Réduisez les fichiers CSS
  • Ajouter de nouvelles images au thème
  • Optimiser les images
  • Générer des thèmes enfants
  • Surveillez les modifications et mettez à jour les référentiels

Toutes ces tâches sont redondantes, ce qui montre les possibilités d’automatisation. Voici comment procéder:

Automatisez le développement de thèmes avec Gulp

Concentrons-nous sur un outil populaire, Gorgée, pour automatiser le développement et le déploiement de thèmes. Gulp est une boîte à outils qui aide à automatiser tous les processus répertoriés ci-dessus. Gulp est un outil basé sur JavaScript qui s’exécute sur un serveur Node.js.

gulpjs

Pour installer Gulp, vous avez besoin Node.js et NPM installé. Vous pouvez ensuite installer Gulp en exécutant les commandes suivantes dans le terminal.

npm install gulp -g

Pour travailler sur un thème avec Gulp, vous devez accéder au répertoire du thème, généralement situé dans / wp-content / themes /, et initialiser NPM avec la commande npm init dans le terminal.

Ensuite, vous devez ajouter Gulp au fichier package.json.

{
"Nom": "mon thème",
"version": "1.0.0",
"la description": "Automatisation du didacticiel de développement WordPress avec Gulp",
"auteur": "Mon nom",
"devDependencies":
{
"gorgée": "^ 3.9.1"
}
}

Une fois Gulp initialisé dans votre répertoire, vous devez définir Tâches gorgées en utilisant la fonctiontask () – chaque tâche est une étape d’automatisation que Gulp effectue. Voici un guide détaillé sur l’écriture de tâches avec Gulp.

Êtes-vous intéressé par la façon dont nous automatisons le développement de thèmes – voici un tutoriel qui vous emmène à l’intérieur du parcours de l’équipe d’ingénierie.

Test du produit final avec déploiement continu

La dernière étape de ce tutoriel de développement WordPress est d’automatiser le test de votre produit final. En bref, vous allez essayer d’évaluer si votre site Web s’affiche correctement sur tous les appareils.

Comme les récentes tendances DevOps suggèrent, la meilleure pratique consiste à aller au-delà de l’intégration continue. Une fois que vous avez réussi à implémenter l’intégration continue, vous vous demandez peut-être si le code présent dans votre référentiel central n’est pas toujours en état de fonctionner? La réponse logique est oui, et par conséquent, il est logique de publier la dernière version de votre logiciel pendant la construction.!

Cela a-t-il un sens dans toutes les situations? Non, surtout si votre client ne souhaite pas de mises à jour continues. Cependant, c’est une philosophie de garder votre code prêt à être expédié. Dans les situations où vous développez votre propre produit, le déploiement continu est le plus efficace. Chez Google, il faut environ 8 minutes pour que le code soit mis en ligne après la validation!

Si vous créez une application Web, la compilation peut ne pas signifier qu’elle fonctionne sur tous les appareils. Dans un tel cas, un outil comme BrowserStack est très pratique. Il exécute votre application Web sur des appareils réels de différents fabricants exécutant divers systèmes d’exploitation pour garantir qu’ils fonctionnent pour le consommateur final..

navigateur

Déploiement continu avec BrowserStack

Dans BrowserStack, vous pouvez exécuter des tests en Python via Sélénium, qui doit être installé via PIP.

installer pip sélénium

Exécutons un test simple à l’aide d’un Galaxy Note 8 fonctionnant sous Android v7.1. Le lien que j’ai fourni dans le code ci-dessous peut être obtenu après inscription sur BrowserStack (il y a un essai gratuit). BrowserStack vous configure avec un exemple de code une fois que vous avez sélectionné les options.

Configuration de votre premier test sur BrowserStackConfiguration de votre premier test sur BrowserStack
à partir du pilote Web d’importation de sélénium
de selenium.webdriver.common.keys import Keys
depuis selenium.webdriver.common.desired_capabilities import DesiredCapabilities

desire_cap = {
‘browserName’: ‘android’,
«appareil»: «Samsung Galaxy Note 8»,
‘realMobile’: ‘vrai’,
‘os_version’: ‘7.1’
}

driver = webdriver.Remote (
command_executor = ‘http: // shaumikdaityari1: [email protected]: 80 / wd / hub’,
désiré_capacités = désiré_cap)

driver.get ("https://www.codeinwp.com/")
elem = driver.find_element_by_name ("q")
elem.send_keys ("BrowserStack")
elem.submit ()
imprimer (driver.title)
driver.quit ()

Pour exécuter, exécutez simplement le fichier ou exécutez les commandes dans le terminal.

python browser_test.py

Vous pouvez confirmer si le test a réussi depuis votre terminal. De plus, vous pouvez également revenir à votre compte BrowserStack pour vérifier la vidéo de son fonctionnement.

Vidéo et journaux des tests BrowserStackVidéo et journaux des tests BrowserStack

Vous pouvez automatiser les tests sur les navigateurs mobiles. BrowserStack vous permet également d’exécuter des tests sur votre propre serveur, comme décrit dans La documentation.

Si vous créez une application mobile, vous souhaitez qu’elle soit testée sur différents appareils via un outil spécifique. C’est possible avec TestGrid, qui vous permet d’exécuter votre application sur une variété d’appareils.

Réflexions finales sur ce tutoriel de développement WordPress inhabituel (automatisé)

Avec cela, nous arrivons à la fin de ce tutoriel sur l’automatisation des tâches pendant le développement de WordPress. Nous avons couvert les avantages de l’automatisation et diverses tâches qui peuvent être automatisées dans votre cycle de développement.

Utilisez-vous d’autres techniques ou outils pour automatiser votre flux de travail de développement pour WordPress? Partagez vos astuces dans les commentaires ci-dessous.

N’oubliez pas de rejoindre notre cours accéléré sur l’accélération de votre site WordPress. Avec quelques correctifs simples, vous pouvez réduire votre temps de chargement de 50 à 80%:

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Это интересно
    Adblock
    detector