Cucumber Cadre : Qu'est-ce que Cucumber?

โšก Rรฉsumรฉ intelligent

Cucumber est un outil de test qui prend en charge le dรฉveloppement pilotรฉ par le comportement (BDD), permettant ร  quiconque de lire les tests, quelles que soient ses connaissances techniques. Cette ressource explique le fonctionnement du BDD ร  travers les รฉtapes ยซ ร‰tant donnรฉ-Quand-Alors ยป et ses avantages. Cucumberet comment cela se compare ร  Selenium et HP ALM.

  • ???? Dรฉfinition principale : Cucumber est un outil de dรฉveloppement pilotรฉ par le comportement qui rรฉdige des tests en langage clair, comprรฉhensibles par les parties prenantes techniques et non techniques.
  • ๐Ÿ—ฃ๏ธ BDD Foundation: Les analystes fonctionnels et les responsables produits dรฉcrivent le comportement du systรจme avant que les dรฉveloppeurs n'รฉcrivent le code, ce qui amรฉliore la comprรฉhension partagรฉe.
  • ๐Ÿ“ ร‰tant donnรฉ-Quand-Alors : chaque Cucumber Le scรฉnario suit une structure lisible ยซ ร‰tant donnรฉ-Quand-Alors ยป qui sert รฉgalement de documentation รฉvolutive.
  • | Avantages clรฉs: Installation rapide, rรฉutilisation du code, orientation utilisateur et implication aisรฉe des parties prenantes mรฉtiers non-dรฉveloppeuses.
  • ๏ธ Comparaison des outils : Cucumber est gratuit et basรฉ sur le BDD, tandis que HP ALM est payant et Selenium cibles tests fonctionnels et de performance.

Cucumber FrameworkTA

Qu'est-ce que le Cucumber?

Cucumber est un outil de test qui prend en charge le dรฉveloppement pilotรฉ par le comportement (BDD). Il offre une mรฉthode pour รฉcrire des tests comprรฉhensibles par tous, quel que soit leur niveau de connaissances techniques. En BDD, les utilisateurs (analystes mรฉtier, responsables produit) rรฉdigent d'abord des scรฉnarios ou des tests d'acceptation qui dรฉcrivent le comportement du systรจme du point de vue du client, pour examen et validation par les responsables produit avant que les dรฉveloppeurs n'รฉcrivent leur code. Cucumber le cadre utilise le Langage de programmation Ruby.

Cucumber FrameworkTA
Cucumber FrameworkTA

Comment fonctionne BDD dans Cucumber Automatisation?

Imaginez que vous รชtes chargรฉ de crรฉer un module de transfert de fonds dans une application de banque en ligne.

Il existe plusieurs faรงons de le tester dans le Cucumber Cadre de test :

  1. Le transfert de fonds ne devrait avoir lieu que si le solde du compte source est suffisant.
  2. Le transfert de fonds devrait avoir lieu si les coordonnรฉes du compte destinataire sont correctes.
  3. Le transfert de fonds devrait avoir lieu si le mot de passe de transaction / le code RSA / l'authentification de sรฉcuritรฉ de la transaction saisis par l'utilisateur est correct.
  4. Le transfert de fonds doit รชtre effectuรฉ mรชme s'il s'agit d'un jour fรฉriรฉ.
  5. Le virement de fonds devra avoir lieu ร  une date ultรฉrieure fixรฉe par le titulaire du compte.

Le Scรฉnario de test le systรจme devient plus รฉlaborรฉ et complexe ร  mesure que nous prenons en compte des fonctionnalitรฉs supplรฉmentaires telles que le transfert d'un montant X pendant un intervalle de Y jours/mois, l'arrรชt du transfert programmรฉ lorsque le montant total atteint Z, etc.

La tendance gรฉnรฉrale des dรฉveloppeurs est de dรฉvelopper les fonctionnalitรฉs et d'รฉcrire le code de test ultรฉrieurement. Comme le montre l'exemple ci-dessus, Cas de test Le dรฉveloppement pour ce scรฉnario est complexe, et le dรฉveloppeur le reportera. Tests jusqu'ร  la sortie, moment auquel ils procรฉderont ร  des tests rapides mais inefficaces.

Pour surmonter ce problรจme, Cucumber BDD (dรฉveloppement axรฉ sur le comportement) a รฉtรฉ conรงu. Il simplifie l'ensemble du processus de test pour un dรฉveloppeur.

In Cucumber BDD, tout ce que tu รฉcris doit y aller ร‰tant donnรฉ-quand-alors รฉtapes. Prenons le mรชme exemple que ci-dessus dans le cadre du BDD :

Given that a fund transfer module in net banking application has been developed
And I am accessing it with proper authentication
When I shall transfer with enough balance in my source account
Or I shall transfer on a Bank Holiday
Or I shall transfer on a future date
And destination a/c details are correct
And transaction password/RSA code/security authentication for the transaction is correct
And press or click send button
Then amount must be transferred
And the event will be logged in log file

N'est-ce pas facile ร  รฉcrire, ร  lire et ร  comprendre ? Ce document couvre tous les cas de test possibles pour le module de transfert de fonds et peut รชtre facilement modifiรฉ pour en intรฉgrer davantage. Il s'apparente d'ailleurs ร  la rรฉdaction de la documentation du module de transfert de fonds.

Avantages de Cucumber Logiciels

  1. Il est utile d'impliquer les parties prenantes de l'entreprise qui ne peuvent pas facilement lire le code.
  2. Le Cucumber Outil de test se concentre sur l'expรฉrience de l'utilisateur final.
  3. Le style de rรฉdaction des tests facilite la rรฉutilisation du code dans les tests.
  4. Installation et exรฉcution rapides et faciles.
  5. Le Cucumber l'outil de test est un outil efficace pour vers les tests.

Cucumber vs Selenium contre ALM

Dans cette section, nous รฉtudierons la diffรฉrence entre Cucumber, Seleniumet ALM.

Cucumber HP ALM (QTP) Selenium
Cucumber Le logiciel est gratuit. QTP est cher. Ce est gratuit.
Cucumber Ce logiciel est un outil de dรฉveloppement pilotรฉ par le comportement. Il s'agit d'un outil d'automatisation fonctionnelle. Il s'agit d'un outil fonctionnel et performant (Selenium Outil de test Grid).
Le plugin dans le Cucumber L'outil de test fonctionne plus rapidement. Les plugins sont plus lents que Cucumber et Selenium. Les plugins sont plus lents que Cucumber.
Cucumber Le framework prend รฉgalement en charge d'autres langages que Ruby, comme Java, Scala, Groovy, etc. QTP Ne prend en charge que VB Script. Selenium supports Java, .Net, et bien d'autres langages.
La rรฉdaction des รฉtapes d'automatisation est un effort conjoint des testeurs et des dรฉveloppeurs. In QTP, seul le testeur rรฉdige les รฉtapes d'automatisation. J'aime CucumberLa rรฉdaction des รฉtapes d'automatisation est un effort conjoint des testeurs et des dรฉveloppeurs.
Le Cucumber L'outil de test ne prend en charge que l'environnement web. Compatible avec les applications web, de bureau et toutes les applications client-serveur. Compatible uniquement avec l'environnement web.

Vรฉrifiez รฉgalement: - UFT vs Selenium: Diffรฉrence entre Selenium et HP UFT

FAQ

Oui. Les outils d'IA peuvent gรฉnรฉrer des scรฉnarios Gherkin et des dรฉfinitions d'รฉtapes directement ร  partir des exigences รฉcrites. Cependant, les testeurs doivent vรฉrifier l'exactitude, la prise en compte des cas limites et l'exhaustivitรฉ des scรฉnarios gรฉnรฉrรฉs avant de les utiliser.

Non. L'IA accรฉlรจre la rรฉdaction des scรฉnarios et la gรฉnรฉration des รฉtapes, mais les testeurs humains dรฉfinissent toujours le comportement attendu, valident la logique mรฉtier et maintiennent la collaboration avec les parties prenantes, ce qui reste essentiel au dรฉveloppement pilotรฉ par le comportement.

Gherkin est le langage en texte brut Cucumber Il sert ร  rรฉdiger des scรฉnarios de test. Il suit la structure ยซ ร‰tant donnรฉ-Quand-Alors ยป, ce qui rend les tests lisibles pour les parties prenantes mรฉtiers et les dรฉveloppeurs tout en restant exรฉcutables.

Cucumber est un outil BDD. Il se concentre sur le comportement du systรจme dรฉcrit du point de vue de l'utilisateur, contrairement au TDD qui consiste ร  รฉcrire des tests unitaires avant d'implรฉmenter chaque petite fonctionnalitรฉ.

Rรฉsumez cet article avec :