Cucumber Πλαίσιο: Τι είναι Cucumber?

⚡ Έξυπνη Σύνοψη

Cucumber είναι ένα εργαλείο δοκιμών που υποστηρίζει την Ανάπτυξη με γνώμονα τη συμπεριφορά, επιτρέποντας σε οποιονδήποτε να διαβάζει δοκιμές ανεξάρτητα από τεχνικές γνώσεις. Αυτός ο πόρος εξηγεί πώς λειτουργεί η BDD μέσω των βημάτων "Δεδομένου-Όταν-Τότε", τα πλεονεκτήματα του Cucumber, και πώς συγκρίνεται με Selenium και HP ALM.

  • 🥒 Βασικός Ορισμός: Cucumber είναι ένα εργαλείο ανάπτυξης που βασίζεται στη συμπεριφορά και γράφει τεστ σε απλή γλώσσα, κατανοητά από τεχνικούς και μη τεχνικούς ενδιαφερόμενους.
  • 🗣️ BDD Foundation: Οι επιχειρηματικοί αναλυτές και οι ιδιοκτήτες προϊόντων περιγράφουν τη συμπεριφορά του συστήματος πριν οι προγραμματιστές γράψουν κώδικα, βελτιώνοντας την κοινή κατανόηση.
  • 📝 Δεδομένου-Όταν-Τότε: Κάθε Cucumber Το σενάριο ακολουθεί μια ευανάγνωστη δομή Δεδομένου-Πότε-Τότε που λειτουργεί και ως ζωντανή τεκμηρίωση.
  • Βασικά πλεονεκτήματα: Γρήγορη εγκατάσταση, επαναχρησιμοποίηση κώδικα, εστίαση στον τελικό χρήστη και εύκολη συμμετοχή επιχειρηματικών ενδιαφερομένων που δεν ασχολούνται με τον κώδικα.
  • Σύγκριση εργαλείων: Cucumber είναι δωρεάν και βασίζεται σε BDD, ενώ το HP ALM είναι επί πληρωμή και Selenium στοχεύει σε λειτουργικές δοκιμές και δοκιμές απόδοσης.

Cucumber Πλαίσιο

Τι είναι Cucumber?

Cucumber είναι ένα εργαλείο δοκιμών που υποστηρίζει την Ανάπτυξη με γνώμονα τη συμπεριφορά (BDD). Προσφέρει έναν τρόπο σύνταξης δοκιμών που ο καθένας μπορεί να καταλάβει, ανεξάρτητα από τις τεχνικές του γνώσεις. Στο BDD, οι χρήστες (επιχειρηματικοί αναλυτές, κάτοχοι προϊόντων) γράφουν πρώτα σενάρια ή δοκιμές αποδοχής που περιγράφουν τη συμπεριφορά του συστήματος από την οπτική γωνία του πελάτη, για έλεγχο και έγκριση από τους κατόχους προϊόντων πριν οι προγραμματιστές γράψουν τον κώδικά τους. Cucumber το πλαίσιο χρησιμοποιεί το Γλώσσα προγραμματισμού Ruby.

Cucumber Πλαίσιο
Cucumber Πλαίσιο

Πώς λειτουργεί το BDD Cucumber Αυτοματοποίηση?

Ας υποθέσουμε ότι σας έχει ανατεθεί η δημιουργία μιας ενότητας Μεταφοράς Χρημάτων σε μια εφαρμογή Net Banking.

Υπάρχουν πολλοί τρόποι για να το δοκιμάσετε στο Cucumber Πλαίσιο δοκιμών:

  1. Η μεταφορά χρημάτων θα πρέπει να πραγματοποιείται εάν υπάρχει επαρκές υπόλοιπο στον αρχικό λογαριασμό.
  2. Η μεταφορά χρημάτων θα πρέπει να πραγματοποιηθεί εάν τα στοιχεία του λογαριασμού προορισμού είναι σωστά.
  3. Η μεταφορά χρημάτων θα πρέπει να πραγματοποιείται εάν ο κωδικός πρόσβασης συναλλαγής / ο κωδικός RSA / ο έλεγχος ταυτότητας ασφαλείας για τη συναλλαγή που καταχωρήθηκε από τον χρήστη είναι σωστός.
  4. Η μεταφορά χρημάτων θα πρέπει να πραγματοποιείται ακόμη και αν είναι αργία.
  5. Η μεταφορά χρημάτων θα πρέπει να πραγματοποιηθεί σε μελλοντική ημερομηνία που θα ορίσει ο κάτοχος του λογαριασμού.

The Σενάριο δοκιμής γίνεται πιο περίπλοκο και περίπλοκο καθώς εξετάζουμε πρόσθετα χαρακτηριστικά όπως το ποσό μεταφοράς X για ένα διάστημα Y ημερών/μηνών, τη διακοπή της προγραμματισμένης μεταφοράς όταν το συνολικό ποσό φτάσει το Z, και ούτω καθεξής.

Η γενική τάση των προγραμματιστών είναι να αναπτύσσουν λειτουργίες και να γράφουν κώδικα δοκιμών αργότερα. Όπως είναι εμφανές στην παραπάνω περίπτωση, Δοκιμαστική θήκη η ανάπτυξη για αυτό το σενάριο είναι περίπλοκη και ο προγραμματιστής θα αναβάλει Δοκιμές μέχρι την κυκλοφορία τους, οπότε θα κάνουν γρήγορες αλλά αναποτελεσματικές δοκιμές.

Για να ξεπεραστεί αυτό το ζήτημα, Cucumber BDD (Ανάπτυξη με γνώμονα τη συμπεριφορά) σχεδιάστηκε. Κάνει ολόκληρη τη διαδικασία δοκιμών εύκολη για έναν προγραμματιστή.

In Cucumber BDD, ό,τι και να γράψεις πρέπει να το προσεγγίσεις Δοσμένο-Πότε-Τότε βήματα. Ας εξετάσουμε το ίδιο παράδειγμα παραπάνω στο 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

Δεν είναι εύκολο να γραφτεί, να διαβαστεί και να κατανοηθεί; Καλύπτει όλες τις πιθανές δοκιμαστικές περιπτώσεις για τη μονάδα μεταφοράς κεφαλαίων και μπορεί εύκολα να τροποποιηθεί για να φιλοξενήσει περισσότερες. Είναι επίσης περισσότερο σαν να γράφετε τεκμηρίωση για τη μονάδα μεταφοράς κεφαλαίων.

Πλεονεκτήματα της Cucumber Λογισμικό

  1. Είναι χρήσιμο να εμπλέκονται επιχειρηματικοί φορείς που δεν μπορούν να διαβάσουν εύκολα τον κώδικα.
  2. The Cucumber Εργαλείο δοκιμής εστιάζει στην εμπειρία του τελικού χρήστη.
  3. Το στυλ γραφής των τεστ επιτρέπει την ευκολότερη επαναχρησιμοποίηση του κώδικα στις δοκιμές.
  4. Γρήγορη και εύκολη εγκατάσταση και εκτέλεση.
  5. The Cucumber Το εργαλείο δοκιμής είναι ένα αποτελεσματικό εργαλείο για δοκιμών.

Cucumber vs Selenium εναντίον ALM

Σε αυτή την ενότητα, θα μελετήσουμε τη διαφορά μεταξύ Cucumber, Seleniumκαι ALM.

Cucumber HP ALM (QTP) Selenium
Cucumber το λογισμικό είναι δωρεάν. QTP είναι ακριβό. Είναι δωρεάν.
Cucumber Το λογισμικό είναι ένα εργαλείο ανάπτυξης που καθοδηγείται από τη συμπεριφορά. Είναι ένα εργαλείο λειτουργικού αυτοματισμού. Είναι ένα λειτουργικό και αποδοτικό (Selenium Εργαλείο δοκιμής (Πλέγμα).
Το πρόσθετο στο Cucumber Το εργαλείο δοκιμής λειτουργεί πιο γρήγορα. Τα πρόσθετα είναι πιο αργά σε σύγκριση με Cucumber και Selenium. Τα πρόσθετα είναι πιο αργά από Cucumber.
Cucumber Το Framework υποστηρίζει και άλλες γλώσσες πέρα ​​από την Ruby, όπως Java, Σκάλα, GroovyΚ.λπ. QTP Υποστηρίζει μόνο VB Script. Selenium υποστηρίζει Java, .Net και πολλές άλλες γλώσσες.
Η συγγραφή βημάτων αυτοματοποίησης είναι μια κοινή προσπάθεια υπευθύνων δοκιμών και προγραμματιστών. In QTP, μόνο ο δοκιμαστής γράφει βήματα αυτοματισμού. Αρέσει Cucumber, η σύνταξη βημάτων αυτοματισμού είναι μια κοινή προσπάθεια υπευθύνων δοκιμών και προγραμματιστών.
The Cucumber Το εργαλείο δοκιμών υποστηρίζει μόνο το περιβάλλον ιστού. Υποστηρίζει web, desktop και οποιαδήποτε εφαρμογή client-server. Υποστηρίζει μόνο το περιβάλλον ιστού.

Ελέγξτε επίσης: - UFT vs Selenium: Διαφορά μεταξύ Selenium και HP UFT

Συχνές Ερωτήσεις

Ναι. Τα εργαλεία τεχνητής νοημοσύνης μπορούν να συντάξουν σενάρια Gherkin και ορισμούς βημάτων απευθείας από γραπτές απαιτήσεις. Ωστόσο, οι υπεύθυνοι δοκιμών θα πρέπει να ελέγξουν τα δημιουργημένα σενάρια για ακρίβεια, ακραίες περιπτώσεις και πλήρη κάλυψη πριν τα χρησιμοποιήσουν.

Όχι. Η Τεχνητή Νοημοσύνη επιταχύνει τη σύνταξη σεναρίων και τη δημιουργία βημάτων, αλλά οι ανθρώπινοι δοκιμαστές εξακολουθούν να ορίζουν την αναμενόμενη συμπεριφορά, να επικυρώνουν την επιχειρηματική λογική και να διατηρούν τη συνεργασία με τα ενδιαφερόμενα μέρη, η οποία παραμένει κεντρικής σημασίας για την Ανάπτυξη με γνώμονα τη συμπεριφορά.

Το Gherkin είναι η γλώσσα απλού κειμένου Cucumber Χρησιμοποιείται για τη σύνταξη σεναρίων δοκιμών. Ακολουθεί τη δομή Given-When-Then, καθιστώντας τις δοκιμές αναγνώσιμες τόσο για τους επιχειρηματικούς ενδιαφερόμενους όσο και για τους προγραμματιστές, ενώ παράλληλα είναι εκτελέσιμες.

Cucumber είναι ένα εργαλείο BDD. Εστιάζεται στη συμπεριφορά του συστήματος που περιγράφεται από την οπτική γωνία του χρήστη, σε αντίθεση με το TDD, το οποίο επικεντρώνεται στη σύνταξη δοκιμών κώδικα σε επίπεδο μονάδας πριν από την εφαρμογή κάθε μικρού τμήματος λειτουργικότητας.

Συνοψίστε αυτήν την ανάρτηση με: