• Accueil / Salesforce / Tests Salesforce –…
, Tests Salesforce &#8211; Tout ce que vous devez savoir<span class="wtr-time-wrap after-title"><span class="wtr-time-number">14</span> minutes de lecture</span>

Tests Salesforce – Tout ce que vous devez savoir14 minutes de lecture


Les tests et l’automatisation des tests sont des éléments essentiels de la gestion des risques et de la livraison à temps de versions Salesforce de qualité. Bien faire les choses nécessite une approche nuancée, et le contexte est essentiel pour choisir la bonne voie. Parce que Salesforce est une plate-forme très dynamique avec des changements entraînés à la fois par l’expansion de Salesforce de la plate-forme et par vos personnalisations pour répondre aux besoins de l’entreprise, vous devez vous familiariser avec l’idée que l’automatisation (et la qualité) des tests est un cheminement continu.

Ce blog est une brève introduction aux tests Salesforce. Nous explorons plusieurs questions clés, fournissons un aperçu des solutions de test disponibles et quelques conseils simples pour vous aider à définir les bases. Continuer à lire!

, Tests Salesforce – Tout ce que vous devez savoir<span class="wtr-time-wrap after-title"><span class="wtr-time-number">14</span> minutes de lecture</span>

Qu’est-ce que le test dans Salesforce ?

Les tests Salesforce correspondent à ce que vous attendez de toute application d’entreprise, en plus de traiter 3 versions majeures par an, ainsi que le correctif occasionnel de Salesforce.

  • Travail un teste pour s’assurer que vos nouvelles fonctionnalités personnalisées fonctionnent comme requis et que rien dans votre organisation Salesforce, y compris les intégrations avec d’autres applications, n’est interrompu avec une nouvelle version interne.
  • Travail deux intègre Job one dans une cadence de publication majeure trisannuelle de Salesforce – en veillant à ce qu’aucun élément d’une mise à jour ou d’un correctif Salesforce ne pose de problème avec vos fonctionnalités existantes ou nouvelles.

Ce blog se concentre sur les tests Salesforce visant à s’assurer que l’application fonctionne comme prévu et comme prévu – donc généralement, les tests unitaires, les tests fonctionnels, les tests d’intégration, les tests d’acceptation des utilisateurs et les tests de régression. Chacun de ces domaines est digne de volumes. Ce qui n’est pas couvert, ce sont les tests de sécurité et de performance. Les deux sont très importants, mais nous mettraient bien en dehors de notre objectif de «pause café».

Séparons la conversation en deux parties : 1) tester les versions majeures de Salesforce et 2) tester les personnalisations et les applications basées sur Salesforce.

Test des versions majeures de Salesforce

Salesforce est une entreprise énorme et innovante. Le défi pour la plupart des clients Salesforce est de suivre les versions et de suivre les domaines qui affectent l’entreprise. Salesforce fait plus que la plupart pour préparer les clients aux mises à jour, mais c’est toujours une entreprise énorme. Selon la taille de votre équipe et le degré de personnalisation de votre organisation, vous aurez besoin d’un peu ou de beaucoup d’aide.

Salesforce fait un excellent travail de test des versions, il n’est donc pas nécessaire (et cela nécessiterait trop de ressources) de tout tester. Il s’agit de garder tests de régression à jour et quelques tests supplémentaires ciblés. Il s’agit de savoir où chercher et de choisir vos batailles. Quelques lignes directrices :

  • Ciblez les fonctionnalités qui sont importantes pour votre entreprise.
  • Identifiez les zones où vous êtes concerné par les mises à jour automatiques (authentification multifacteur par exemple).
  • Prévoyez un test de régression en constante expansion – testez ce que vous avez construit auparavant, testez ce que vous venez de construire.
  • Testez les intégrations avec les applications de votre écosystème Salesforce.
  • Faites des tests de fumée ciblés et/ou des tests exploratoires où vous n’avez pas de couverture et où l’expérience dit test de toute façon.

Astuce : Trouvez quelqu’un/une organisation pour vous aider à identifier les éléments clés des mises à jour majeures. La façon la plus simple de commencer est de suivre des blogueurs et des organisations comme SalesforceBen.com qui publient régulièrement les points saillants des mises à jour majeures de Salesforce. Si vous avez des relations avec des ISV et des SI qui ont une exigence intégrée pour aider leurs clients à gérer les mises à jour de Salesforce, c’est une autre option. L’essentiel est que ces personnes fassent une grande partie du travail de révision et d’organisation de l’information.

Tester de nouvelles personnalisations et de nouvelles applications

Lorsqu’il s’agit de tester les personnalisations Salesforce (y compris les applications personnalisées construites sur Salesforce), la situation se complique. En effet, la responsabilité de la qualité des personnalisations n’est pas partagée avec Salesforce. Il n’y a pas d’armée de vendeurs qui travaille pour s’assurer que vos changements vont réussir. Voici les principales différences par rapport aux tests des versions majeures de Salesforce.

Pas seulement l’assurance qualité – Lorsque vous testez votre code, il n’y a pas que l’assurance qualité. Les équipes impliquées se sont élargies pour inclure des architectes, des développeurs et des analystes commerciaux, souvent chacun avec leurs propres outils et méthodologies de test. L’objectif final est de mettre tout le monde sur la même longueur d’onde et d’avoir une automatisation des tests tout au long du cycle de développement, mais ce n’est pas moyen et c’est loin d’être gagné d’avance. Le contexte est très important – les compétences du personnel, l’outillage, les étapes relatives des devops sont autant de considérations.

Test de cycle de vie complet – C’est un article de foi que les bogues trouvés plus tôt dans le cycle de vie coûtent moins cher à corriger. Cela est particulièrement vrai pour les applications Salesforce en raison des dommages que les pannes liées à Salesforce peuvent causer. Les tests tout au long du cycle de vie signifient que vous devrez inclure beaucoup plus de types de tests que ce qui est généralement considéré pour les tests de versions majeures. Nous aborderons ci-dessous les options de solution de test pour Salesforce.

Tests continus – Il est important de se rappeler que, contrairement aux tests de régression pour une version de Salesforce, le test de nouveaux développements n’est pas un processus linéaire. L’objectif à long terme devrait être des tests continus, surtout si vous adoptez une méthodologie de développement agile. Les tests continus et la réduction de la boucle de rétroaction des tests dans le cadre du SDLC complet sont le meilleur moyen d’éviter l’augmentation de la dette de test, l’augmentation des risques et la probabilité d’un échec spectaculaire de vos applications Salesforce.

Comment l’automatisation des tests peut vous aider

L’automatisation des tests ne garantit pas de bons résultats, cependant, c’est une partie essentielle de tout plan de test de qualité global. Si vous gardez à l’esprit certaines vérités évidentes mais parfois négligées, vous pouvez éviter les premiers pièges.

  • Vérité 1: Un test doit être reproductible et avoir un résultat connu pour être automatisé.
  • Vérité 2: Automatisez les zones où l’exécution des tests manuels échoue – hautement répétitifs, très complexes, trop de tests en trop peu de temps.

Là où l’automatisation des tests est la plus utile :

  • Processus et flux fréquemment utilisés
  • Tout ce qui est complexe et/ou a de nombreuses permutations
  • Chaque fois que les tests bénéficient de manière significative d’une exécution rapide (tests API vs UI)
  • Partout où mvp ou mvq nécessite une grande étendue et/ou un volume de tests

Lire la suite: Qu’est-ce que l’automatisation des tests dans Salesforce et pourquoi est-ce important ?

Avantages de l’automatisation des tests

Si vous êtes en mesure de passer de l’absence de test ou de l’exécution de test manuel à l’automatisation des tests, les avantages peuvent être énormes. Certains sont évidents : vous supprimerez les tests en tant que bloqueur de version et la qualité de la version et les résultats commerciaux s’amélioreront. Certains sont plus subtils mais tout aussi importants. Voici quelques faits saillants :

  • Diminuez la dette de test et réduisez le risque.
  • Améliorez la vitesse, la couverture et la précision de l’exécution des tests de régression (de plusieurs multiples par rapport à la régression manuelle).
  • Permettre la réaffectation des ressources pour améliorer la couverture, ajouter des tests pour de nouvelles fonctionnalités et optimiser le processus de test (temps d’exécution, couverture, précision – par exemple risque/couverture/test/complexité).
  • Rajoutez les tests exploratoires. Lorsque nous automatisons, nous pouvons créer du temps pour explorer ces inconnues dans le produit/service/CX, afin d’obtenir une meilleure compréhension de l’ensemble du produit. C’est là que les tests en tant qu’art créatif se produisent.
  • Amélioration de la vie au travail pour toute l’équipe. Une bonne automatisation améliore la confiance et la qualité. Une mauvaise automatisation n’est qu’ambiguïté et dette technologique.

Différentes solutions de test : quelles sont mes options ?

Test natif de Salesforce

Les options de test natives de Salesforce sont axées sur le développeur, principalement sur les tests unitaires. Salesforce inclut des outils dans la Developer Console pour créer et gérer des tests, des classes de test, des méthodes de création et de stockage de données, une couverture de code, etc. Il existe des pistes et des mélanges de pistes avec d’excellents conseils pour la configuration des tests unitaires pour le code LWC et Apex. Voici un trailmix qui couvre les bases. Les tests unitaires axés sur les développeurs sont un bon début, mais peuvent être une transition difficile pour les entreprises qui personnalisent leurs organisations principalement via des outils déclaratifs. Les tests unitaires à eux seuls ne répondront pas aux exigences pour la suite du cycle de vie, en particulier les tests UAT, d’intégration et de régression.

Exécution manuelle des tests

La plupart des organisations commencent par l’exécution manuelle des tests car elle est simple à configurer, de nombreuses personnes peuvent être impliquées avec très peu de formation et il est facile de partager les résultats. Le problème avec l’exécution manuelle des tests est qu’elle n’évolue pas, peut être répétitive (c’est-à-dire ennuyeuse), sujette aux erreurs et conduit généralement à tester la dette et le risque non géré au fil du temps.

Tests exploratoires

Il est important de faire la distinction entre l’exécution manuelle des tests et les tests exploratoires. Bien que les tests exploratoires soient un processus manuel, ils sont plus créatifs et techniques que scriptés, et c’est une partie très importante pour combler les lacunes en testant en dehors des cas d’utilisation typiques. L’automatisation des tests ne peut pas (et ne doit pas) tout couvrir. Il y a toujours quelque chose que vous manquerez ou que vous déciderez de ne pas automatiser en cours de route. Lorsqu’ils sont effectués correctement, les tests exploratoires devraient informer les futures automatisations de tests.

Outils Open Source

Selenium est le framework open source incontournable pour les tests d’applications Web. Il est largement utilisé et a une communauté bien organisée. Cependant, le niveau de compétence requis est relativement élevé et les tests, en particulier dans un contexte Salesforce, nécessitent une maintenance plus que moyenne en raison du taux de changement de la plate-forme Salesforce (à la fois les mises à jour et les personnalisations).

Outils de test commerciaux

Il existe une grande variété d’outils commerciaux disponibles. Un moyen utile de les segmenter est : 1) les tests d’applications Web génériques, 2) les tests d’applications Web génériques avec les fonctionnalités de Salesforce, 3) les outils de test conçus sur mesure pour Salesforce. Le bon choix dépend de l’organisation. Est-ce que Salesforce est la seule plate-forme à être testée, existe-t-il une équipe d’assurance qualité, l’équipe d’assurance qualité est-elle pleine de codeurs ou de testeurs manuels, existe-t-il une culture devops bien établie pour les versions de Salesforce ou est-ce plus « pousser vers la production » et « traverser votre les doigts’? Le contexte est tout. Points clés à retenir : Il n’y a pas de solution miracle. C’est bien d’avoir plusieurs solutions de test. Planifier à l’avance. Assurez-vous que l’outil que vous choisissez bénéficie d’un excellent support de fournisseur et d’une communauté vocale et connectée. À Provar, nous sommes une solution d’automatisation des tests conçue sur mesure pour Salesforce depuis 2014. Contactez-nous pour une démonstration dès aujourd’hui !

Considérations non techniques

Il ne s’agit pas seulement de choisir les bons outils. Certains facteurs clés liés aux personnes sont impliqués dans la livraison de versions de qualité. De bons tests nécessitent de la curiosité, un esprit critique et de la communication. Curiosité de regarder au-delà des exigences de test et des spécifications fonctionnelles et de comprendre la logique commerciale et le point de vue de l’utilisateur. Esprit critique et expérience pour identifier les principaux domaines de risque ou les domaines dans lesquels une conception pourrait échouer. Communication pour s’assurer que les développeurs, les analystes commerciaux, l’équipe de test et les autres parties prenantes sont tous sur la même longueur d’onde. Tout est très important, mais un sujet de blog pour un autre jour.

Les meilleurs conseils pour l’automatisation des tests

Lorsque les organisations se lancent dans un parcours d’automatisation des tests, il y a une tendance naturelle à « tout automatiser, opter pour une couverture à 100 %, trouver et corriger plus de bogues ». Cela sonne bien et semble promettre des logiciels de qualité et d’excellents résultats – ou à tout le moins, faire avancer l’organisation dans la bonne direction. Le problème avec cette réflexion est que a) vous n’y arriverez jamais, b) tous les bogues ne sont pas créés égaux (la correction de 10 bogues critiques est plus précieuse pour l’entreprise que la correction de 50 bogues non critiques), c) le coût supplémentaire de les tests à mesure que vous vous rapprochez de l’automatisation complète ou d’une couverture à 100 % l’emporteront de loin sur le risque commercial. C’est vrai avec Salesforce. La planification et l’efficacité sont d’énormes facteurs de succès. Les conseils suivants devraient vous aider à tirer le meilleur parti de vos ressources de test.

  • Lors de l’élaboration d’un plan d’automatisation des tests, faites attention au contexte. Toutes les organisations ne sont pas les mêmes. Les compétences de test, l’outillage, le niveau du processus DevOps et l’historique de la qualité des versions (succès vs échecs) joueront tous un rôle. Comprenez le niveau de maturité des tests de votre organisation et planifiez en conséquence.
  • Automatisez ce qui compte pour votre entreprise. Rassemblez les exigences, identifiez les domaines de risque commercial, choisissez vos cibles.
  • Développer, documenter et socialiser le plan de test. Mettez à jour et répétez, si nécessaire.
  • Construisez votre automatisation de test au fil du temps (n’essayez pas de tout automatiser).
  • Faites attention aux ratios effort de test/risque commercial. Ne passez pas beaucoup de temps à développer et à maintenir des tests pour les domaines à faible risque commercial.
  • Développer les tests comme un sport d’équipe. Partagez la culture de test entre l’AQ, les développeurs et les analystes commerciaux. Évitez de tester les silos. Impliquez toute l’équipe dès le début pour favoriser l’appropriation par l’ensemble de l’équipe.

Sommaire

Les tests et l’automatisation des tests sont essentiels pour améliorer la qualité de vos versions Salesforce. Commencer petit, prêter attention aux spécificités de votre entreprise, tester les ratios effort/risque, les outils et les personnes existants, font tous partie des éléments essentiels du succès. Le contexte est roi.

De nombreuses ressources sont disponibles pour vous aider à démarrer ou à passer au niveau supérieur dans votre parcours de qualité Salesforce. La communauté Salesforce, les fournisseurs et les intégrateurs système sont tous prêts à vous aider.

En tant qu’ancien testeur de manuels dans une entreprise où les nouvelles versions et fonctionnalités cassaient régulièrement nos applications Salesforce, j’ai appris beaucoup de ces leçons à la dure. Économisez du temps (et des ennuis) en regardant des entreprises telles que Provar, spécialisé dans l’automatisation des tests Salesforce. Ou utilisez simplement cette introduction comme guide pour évaluer l’un de vos choix lors de la planification de votre propre automatisation de test Salesforce. Bonne chance!



Source de l’article traduit automatiquement en Français

Besoin d'aide ?
Vous utilisez Pardot depuis un certain temps mais vous n'êtes pas sûr d'en
exploiter tout le potentiel

Notre analyse de votre Pardot offerte dès aujourd'hui
Merci, vous pouvez compléter notre questionnaire
Nous allons revenir vers vous rapidement !

Fermer