Σε αυτό το σεμινάριο, θα μάθετε πώς να ενσωματώνετε το Αγγούρι στο Selenium Webdriver.
Τι είναι το αγγούρι;
Το αγγούρι είναι μια δοκιμαστική προσέγγιση που υποστηρίζει την ανάπτυξη βάσει συμπεριφοράς (BDD). Εξηγεί τη συμπεριφορά της εφαρμογής σε ένα απλό αγγλικό κείμενο χρησιμοποιώντας γλώσσα Gherkin.
Μάθετε περισσότερα στη διεύθυνση - https://www.guru99.com/cucumber-tutorials.html
Τι είναι το σελήνιο;
Το Selenium είναι ένα εργαλείο αυτοματισμού για τη λειτουργική δοκιμή της διαδικτυακής εφαρμογής. Το Selenium υποστηρίζει διαφορετική γλώσσα όπως java, ρουμπίνι, python C #, κ.λπ.
Μάθετε περισσότερα στη διεύθυνση - https://www.guru99.com/selenium-tutorial.html
Σε αυτό το σεμινάριο αγγουριών, θα μάθουμε-
- Γιατί να χρησιμοποιήσετε το αγγούρι με σελήνιο;
- Προαπαιτούμενο για τη χρήση αγγουριού με σελήνιο.
- Δοκιμή αυτοματισμού με χρήση αγγουριού με σελήνιο.
- Σενάριο 1: Εκτύπωση κειμένου στην κονσόλα.
- Σενάριο 2: Εισαγάγετε διαπιστευτήριο σύνδεσης και επαναφέρετε την τιμή.
- Σενάριο 3: Εισαγάγετε το διαπιστευτήριο σύνδεσης στο Guru99 και επαναφέρετε την τιμή. Κάντε αυτό για 3 σύνολα δεδομένων.
Γιατί να χρησιμοποιήσετε το αγγούρι με σελήνιο;
Το αγγούρι και το σελήνιο είναι δύο δημοφιλείς τεχνολογίες.
Οι περισσότεροι από τους οργανισμούς χρησιμοποιούν το Σελήνιο για λειτουργικές δοκιμές. Αυτοί οι οργανισμοί που χρησιμοποιούν το Σελήνιο, θέλουν να ενσωματώσουν το Σελήνιο με το Αγγούρι καθώς το Αγγούρι διευκολύνει την ανάγνωση και την κατανόηση της ροής της εφαρμογής.
Το εργαλείο αγγουριού βασίζεται στο πλαίσιο ανάπτυξης βάσει συμπεριφοράς που λειτουργεί ως γέφυρα μεταξύ των ακόλουθων ανθρώπων:
- Μηχανικός λογισμικού και αναλυτής επιχειρήσεων.
- Χειροκίνητος δοκιμαστής και αυτοματισμός.
- Χειροκίνητος ελεγκτής και προγραμματιστές.
Το Cucumber BDD framework ωφελεί επίσης τον πελάτη να κατανοήσει τον κωδικό εφαρμογής καθώς χρησιμοποιεί τη γλώσσα Gherkin που είναι σε απλό κείμενο. Οποιοσδήποτε στον οργανισμό μπορεί να κατανοήσει τη συμπεριφορά του λογισμικού. Η σύνταξη του Gherkin είναι σε απλό κείμενο που είναι αναγνώσιμο και κατανοητό.
Προαπαιτούμενο για τη χρήση αγγουριού με σελήνιο
Πριν ξεκινήσουμε την ολοκλήρωση του Cucumber Selenium, χρειαζόμαστε τα ακόλουθα στοιχεία:
- Αρχεία βάζων σεληνίου:
- Σελήνιο-διακομιστής-αυτόνομος
Μπορείτε να το κατεβάσετε στη διεύθυνση http://www.seleniumhq.org/download/
Αρχεία βάζων για αγγούρι:
- Πυρήνας αγγουριού
- Αγγούρι-html
- κάλυψη κώδικα cobertura
- Αγγούρι-java
- Αγγούρι
- Αγγούρι-jvm-deps
- Αναφορά αγγουριών
- Hemcrest-core
- Αγγουράκι
- Τζούνιτ
Μπορείτε να κατεβάσετε στη διεύθυνση https://mvnrepository.com/search?q=Cucumber
Πρέπει να αναζητήσετε αρχεία και να τα κατεβάσετε ξεχωριστά.
Για παράδειγμα, θα σας δείξουμε να κατεβάσετε ένα από τα αρχεία βάζων, δηλαδή το "Cucumber-core".
Κάντε κλικ στον παραπάνω σύνδεσμο λήψης. Ανακατευθύνεται στον παρακάτω ιστότοπο. Τώρα αναζητήστε το συγκεκριμένο βάζο, δηλαδή το "Cucumber Core" όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Στην επόμενη σελίδα, κάντε κλικ στην έκδοση 1.2.2,
Στην επόμενη οθόνη, κάντε κλικ στη λήψη για να λάβετε το αρχείο βάζου «Cucumber Core».
Σημείωση : Για την ευκολία σας, έχουμε ομαδοποιήσει τα αρχεία βάζων που απαιτούνται για λήψη από το Maven εδώ. Με την πάροδο του χρόνου αυτά τα βάζα μπορεί να ενημερωθούν και να καταστούν ασύμβατα Σας ζητείται να τα κατεβάσετε χρησιμοποιώντας τη μέθοδο που απεικονίζεται παραπάνω.
Δοκιμή αυτοματισμού με χρήση αγγουριού με σελήνιο.
Ας μελετήσουμε βήματα για να χρησιμοποιήσετε το Αγγούρι με σελήνιο βήμα προς βήμα. Εδώ θα καλύψουμε 3 σενάρια:
- Σενάριο 1: Εκτύπωση κειμένου στην κονσόλα.
- Σενάριο 2: Εισαγάγετε διαπιστευτήριο σύνδεσης και επαναφέρετε την τιμή.
- Σενάριο 3: Εισαγάγετε το διαπιστευτήριο σύνδεσης στο Guru99 και επαναφέρετε την τιμή. Κάντε αυτό για 3 σύνολα δεδομένων.
Σενάριο 1: Εκτύπωση κειμένου στην κονσόλα.
Σε αυτό το σενάριο, απλώς εκτυπώνουμε το κείμενο στην κονσόλα χρησιμοποιώντας το Αγγούρι.
Βήμα 1) Δημιουργία έργου σε έκλειψη.
Δημιουργήστε έργο Java με το όνομα "CucumberWithSelenium" όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.
Βήμα 2) Προσθήκη αρχείων Jar στο έργο.
Κάντε δεξί κλικ στο Project> Select Properties> Go to Java Build Path. Προσθέστε όλες τις βιβλιοθήκες που κατεβάσατε νωρίτερα.
Βήμα 3) Δημιουργία αρχείου χαρακτηριστικών
Για τη δημιουργία αρχείου χαρακτηριστικών, δημιουργήστε πρώτα το φάκελο χαρακτηριστικών όπως φαίνεται παρακάτω στο στιγμιότυπο οθόνης.
Τώρα Εισαγάγετε το όνομα φακέλου "Χαρακτηριστικά" και κάντε κλικ στο κουμπί "Τέλος".
Τώρα, δημιουργήστε ένα αρχείο δυνατοτήτων στο φάκελο "Features" με το όνομα "MyTest.feature" - Η διαδικασία είναι παρόμοια με τη δημιουργία ενός φακέλου
Σημείωση: Ίσως χρειαστεί να εγκαταστήσετε το Cucumber Eclipse Plugin για να λειτουργήσει αυτό. Πηγαίνετε - Βοηθά-> Εγκαταστήστε νέο λογισμικό-> αντιγράψτε επικολλήστε τον σύνδεσμο http://cucumber.github.io/cucumber-eclipse/update-site/ και εγκαταστήστε
Βήμα 4) Γράψτε σενάρια.
Οι παρακάτω γραμμές γράφονται στο αρχείο «MyTest.feature» χρησιμοποιώντας τη γλώσσα Gherkin όπως φαίνεται παρακάτω:
Χαρακτηριστικό: Επαναφορά λειτουργικότητας στη σελίδα σύνδεσης της Εφαρμογής
Σενάριο: Επαλήθευση του κουμπιού Επαναφοράς
Δεδομένου Ανοίξτε τον Firefox και ξεκινήστε την εφαρμογή
Όταν εισάγετε το όνομα χρήστη και τον κωδικό πρόσβασης
Στη συνέχεια, Επαναφέρετε τα διαπιστευτήρια
Επεξήγηση κώδικα
Γραμμή 1) Σε αυτήν τη γραμμή γράφουμε επιχειρησιακή λειτουργικότητα.
Γραμμή 2) Σε αυτήν τη γραμμή γράφουμε ένα σενάριο για δοκιμή.
Γραμμή 3) Σε αυτήν τη γραμμή ορίζουμε την προϋπόθεση.
Γραμμή 4) Σε αυτήν τη γραμμή ορίζουμε τη δράση που πρέπει να εκτελέσουμε.
Γραμμή 4) Σε αυτήν τη γραμμή ορίζουμε το αναμενόμενο αποτέλεσμα ή αποτέλεσμα.
Βήμα 5) Σύνταξη σεναρίου testrunner script για σχεδιασμό πλαισίου Selenium Cucumber
Εδώ δημιουργούμε το πακέτο «TestRunner» και μετά το αρχείο κλάσης «Runner.java» κάτω από αυτό.
πακέτο TestRunner;εισαγωγή org.junit.runner.RunWith;εισαγωγή αγγουριού.api.CucumberOptions;εισαγωγή αγγουριού.api.junit. Αγγούρι;@RunWith (Cucumber.class)@CucumberOptions (features = "Features", κόλλα = {"StepDefinition"})Δημόσια τάξη Runner{}
Στον παραπάνω κώδικα Cucumber Java, εκτελούμε τη δοκιμή αγγουριού χρησιμοποιώντας τους ακόλουθους σχολιασμούς:
Ο σχολιασμός @RunWith () λέει για την κλάση δοκιμών για να ξεκινήσει η εκτέλεση των δοκιμών μας.
Ο σχολιασμός @CucmberOptions () χρησιμοποιείται για τον ορισμό ορισμένων ιδιοτήτων για τη δοκιμή αγγουριού μας, όπως αρχείο χαρακτηριστικών, ορισμός βημάτων κ.λπ.
Στιγμιότυπο οθόνης του αρχείου TestRunner.
Βήμα 6) Δημιουργία σεναρίου ορισμού βημάτων.
Τώρα εδώ δημιουργούμε το πακέτο "StepDefinition" και στη συνέχεια το αρχείο σεναρίου "Steps.java" κάτω από αυτό. Εδώ γράφουμε ένα σενάριο σεληνίου για να πραγματοποιήσουμε το τεστ με τις μεθόδους Αγγούρι.
πακέτο StepDefinition;εισαγωγή αγγουριού.api.java.el. Δόθηκε;εισαγωγή cucumber.api.java.el. Στη συνέχεια;εισαγωγή cucumber.api.java.el.When;βήματα δημόσιας τάξης {@Given ("Ανοίξτε τον Firefox και ξεκινήστε την εφαρμογή $")public void open_the_Firefox_and_launch_the_application () ρίχνει Throwable{System.out.println ("Αυτό το βήμα ανοίγει τον Firefox και ξεκινήστε την εφαρμογή.");}@When ("Πληκτρολογήστε το όνομα χρήστη και τον κωδικό πρόσβασης $")public void enter_the_Username_and_Password () ρίχνει Throwable{System.out.println ("Αυτό το βήμα εισάγετε το όνομα χρήστη και τον κωδικό πρόσβασης στη σελίδα σύνδεσης.");}@ Στη συνέχεια ("Επαναφορά διαπιστευτηρίων $")public void Reset_the_credential () ρίχνει Throwable{System.out.println ("Αυτό το βήμα κάντε κλικ στο κουμπί Επαναφορά.");}}
Στον παραπάνω κώδικα, η τάξη δημιουργείται με το όνομα «Βήματα». Ο σχολιασμός αγγουριού χρησιμοποιείται για τη χαρτογράφηση με το αρχείο χαρακτηριστικών. Κάθε μέθοδος σχολιασμού ορίζεται:
@ Μέθοδος καθορισμού σχολιασμού για το άνοιγμα του firefox και την εκκίνηση της εφαρμογής
@ Όταν ο σχολιασμός καθορίζει τη μέθοδο εισαγωγής του ονόματος χρήστη και του κωδικού πρόσβασης
Στη συνέχεια, ο τρόπος σχολιασμού προσδιορίζει για να επαναφέρετε τα διαπιστευτήρια
Κάτω από κάθε μέθοδο, εκτυπώνουμε μόνο ένα μήνυμα.
Ακολουθεί το στιγμιότυπο οθόνης του σεναρίου "Steps.java" και του δέντρου έργου, πώς φαίνεται.
Σημείωση: Ο ορισμός των βημάτων δεν είναι παρά τα βήματα που θέλετε να εκτελέσετε σύμφωνα με αυτήν τη μέθοδο αγγουριού.
Βήμα 7) Εκτέλεση του σεναρίου.
Ο χρήστης μπορεί να εκτελέσει αυτό το σενάριο από το σενάριο Test runner, δηλ. «Runner.java» όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.
Βήμα 8) Αναλύστε την έξοδο.
Κατά την εκτέλεση του σεναρίου 'Runner.java', εμφανίζει το κείμενο στην κονσόλα. Είναι το ίδιο κείμενο που ορίζεται στο σενάριο «Steps.java».
Σενάριο 2: Εισαγάγετε διαπιστευτήριο σύνδεσης και επαναφέρετε την τιμή.
Εδώ θα εισάγουμε το Credential στη σελίδα επίδειξης Guru99 και θα επαναφέρουμε την τιμή
Για το Σενάριο 2 πρέπει να ενημερώσουμε μόνο το σενάριο «Steps.java». Εδώ γράφουμε στην πραγματικότητα το σενάριο όπως φαίνεται στα παρακάτω βήματα. Κατ 'αρχάς, πρέπει να προσθέσουμε το αρχείο βάζων Selenium σε αυτό το έργο.
Βήμα 1) Εδώ ενημερώνουμε το σενάριο «Steps.java» όπως φαίνεται στον παρακάτω κώδικα και το στιγμιότυπο οθόνης.
πακέτο StepDefinition;εισαγωγή org.openqa.selenium.By;εισαγωγή org.openqa.selenium.WebDriver;εισαγωγή org.openqa.selenium.firefox.FirefoxDriver;εισαγωγή αγγουριού.api.java.el. Δόθηκε;εισαγωγή cucumber.api.java.el. Στη συνέχεια;εισαγωγή cucumber.api.java.el.When;βήματα δημόσιας τάξης {Πρόγραμμα οδήγησης WebDriver;@Given ("Ανοίξτε τον Firefox και ξεκινήστε την εφαρμογή $")public void open_the_Firefox_and_launch_the_application () ρίχνει Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");πρόγραμμα οδήγησης = νέο FirefoxDriver ();driver.manage (). window (). μεγιστοποίηση ();driver.get ("http://demo.guru99.com/v4");}@When ("Πληκτρολογήστε το όνομα χρήστη και τον κωδικό πρόσβασης $")public void enter_the_Username_and_Password () ρίχνει Throwable{driver.findElement (By.name ("uid")). sendKeys ("όνομα χρήστη12");driver.findElement (By.name ("κωδικός πρόσβασης")). sendKeys ("password12");}@ Στη συνέχεια ("Επαναφορά διαπιστευτηρίων $")public void Reset_the_credential () ρίχνει Throwable{driver.findElement (By.name ("btnReset")). κάντε κλικ στο ();}}
Στιγμιότυπο οθόνης του παραπάνω σεναρίου.
Βήμα 2) Εκτελέστε το σενάριο.
Μετά την ενημέρωση εκτελούμε το Runner.java.
Βήμα 3) Αναλύστε την έξοδο.
Στην έξοδο μπορείτε να δείτε τα εξής:
- Ξεκίνησε το πρόγραμμα περιήγησης.
- Ο ιστότοπος επίδειξης τράπεζας Guru99 ανοίγει.
- Το όνομα χρήστη και ο κωδικός πρόσβασης τοποθετούνται στη σελίδα σύνδεσης.
- Επαναφέρετε τις τιμές.
Σενάριο 3: Εισαγάγετε το διαπιστευτήριο σύνδεσης στο Guru99 και επαναφέρετε την τιμή. Κάντε αυτό για 3 σύνολα δεδομένων.
Εδώ πρέπει να ενημερώσουμε τόσο το "Step.java" όσο και το αρχείο χαρακτηριστικών.
Βήμα 1) Ενημερώστε το αρχείο χαρακτηριστικών όπως φαίνεται παρακάτω:
Εδώ ενημερώνουμε το αρχείο δυνατοτήτων με τη σύνταξη «Σενάριο περίγραμμα» και «παραδείγματα».
Χαρακτηριστικό: Επαναφορά λειτουργικότητας στη σελίδα σύνδεσης της Εφαρμογής
Περίγραμμα σεναρίου: Επαλήθευση του κουμπιού επαναφοράς με αριθμούς διαπιστευτηρίων
Δεδομένου Ανοίξτε τον Firefox και ξεκινήστε την εφαρμογή
Όταν εισάγετε το όνομα χρήστη <όνομα χρήστη> και τον κωδικό πρόσβασης <κωδικός πρόσβασης>
Στη συνέχεια, Επαναφέρετε τα διαπιστευτήρια
Παραδείγματα:
| όνομα χρήστη | κωδικός πρόσβασης |
| Χρήστης1 | κωδικός πρόσβασης1 |
| Χρήστης2 | κωδικός πρόσβασης2 |
| Χρήστης3 | κωδικός πρόσβασης3 |
// Σε αυτήν τη γραμμή ορίζουμε το σύνολο δεδομένων.
Βήμα 2) Τώρα ενημερώστε το σενάριο Step.java.
Εδώ ενημερώνουμε τις μεθόδους για να περάσουμε τις παραμέτρους, το ενημερωμένο σενάριο που φαίνεται παρακάτω:
πακέτο StepDefinition;εισαγωγή org.openqa.selenium.By;εισαγωγή org.openqa.selenium.WebDriver;εισαγωγή org.openqa.selenium.firefox.FirefoxDriver;εισαγωγή αγγουριού.api.java.el. Δόθηκε;εισαγωγή cucumber.api.java.el. Στη συνέχεια;εισαγωγή cucumber.api.java.el.When;βήματα δημόσιας τάξης {Πρόγραμμα οδήγησης WebDriver;@Given ("Ανοίξτε τον Firefox και ξεκινήστε την εφαρμογή $")public void open_the_Firefox_and_launch_the_application () ρίχνει Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");πρόγραμμα οδήγησης = νέο FirefoxDriver ();driver.manage (). window (). μεγιστοποίηση ();driver.get ("www.demo.guru99.com/v4");}@ Όταν ("Πληκτρολογήστε το όνομα χρήστη \" (. *) \ "Και τον κωδικό πρόσβασης \" (. *) \ "$")public void enter_the_Username_and_Password (String username, String password) ρίχνει Throwable{driver.findElement (By.name ("uid")). sendKeys (όνομα χρήστη);driver.findElement (By.name ("κωδικός πρόσβασης")). sendKeys (κωδικός πρόσβασης);}@ Στη συνέχεια ("Επαναφορά διαπιστευτηρίων $")public void Reset_the_credential () ρίχνει Throwable{driver.findElement (By.name ("btnReset")). κάντε κλικ στο ();}}
Βήμα 3) Τώρα εκτελέστε το ενημερωμένο σενάριο.
Στην κάτω οθόνη εμφανίζεται η επιτυχής εκτέλεση του σεναρίου και ο χρόνος που απαιτείται από κάθε σύνολο δεδομένων.
Βήμα 4) Αναλύστε την έξοδο.
Στην έξοδο μπορείτε να δείτε τα εξής:
Η παρακάτω έξοδος επαναλαμβάνεται για τον αριθμό των συνόλων δεδομένων, δηλαδή για 3 σύνολα.
- Ξεκίνησε το πρόγραμμα περιήγησης.
- Ο ιστότοπος επίδειξης τράπεζας Guru99 ανοίγει.
- Το όνομα χρήστη και ο κωδικός πρόσβασης τοποθετούνται στη σελίδα σύνδεσης.
- Επαναφέρετε τις τιμές.
Συμπέρασμα.
Το αγγούρι είναι ένα πολύ δημοφιλές εργαλείο BDD. Είναι ευανάγνωστο και κατανοητό από όλα τα ενδιαφερόμενα μέρη, συμπεριλαμβανομένων τεχνικών και μη τεχνικών προσώπων.
Το αγγούρι μπορεί να ενσωματωθεί στο Selenium ακολουθώντας 3 βήματα
- Δημιουργήστε ένα αρχείο χαρακτηριστικών στο οποίο καθορίζουν τη δυνατότητα και τα σενάρια βήμα προς βήμα χρησιμοποιώντας τη γλώσσα Gherkin.
- Δημιουργία αρχείου Testrunner. Σε αυτό το αρχείο, ενσωματώσαμε το Αγγούρι με το πλαίσιο BDD στο Σελήνιο. Εκτελούμε αυτό το σενάριο.
- Δημιουργήστε τον ορισμό Step, το πραγματικό σενάριο σεληνίου που καθορίζεται σε αυτό το πακέτο.