cucumber selenium tutorial
Cucumber Selenium WebDriver Java Ενσωμάτωση με Παράδειγμα:
Στο τελευταίο σεμινάριο, συζητήσαμε το εργαλείο αγγούρι , τη χρήση του και διαφορετικές δυνατότητες.
Προχωράμε δωρεάν Σε απευθείας σύνδεση εκπαίδευση σεληνίου σειρά, θα συζητήσουμε πώς να δημιουργήσετε ένα έργο αγγουριού και θα συζητήσετε την ενσωμάτωση του Selenium WebDriver με το Αγγούρι.
Θα δημιουργήσουμε ένα έργο αγγουριού με τον Maven. Για να ρυθμίσετε το Maven στο σύστημά σας παρακαλώ ανατρέξτε σε αυτό το σεμινάριο στο Maven από την ίδια σειρά.
πώς μπορώ να ανοίξω ένα αρχείο βάζου
Τι θα μάθετε:
Ρύθμιση έργου αγγουριού
Βήμα 1: Δημιουργήστε ένα νέο έργο Maven:
Δεξί κλικ -> Νέο -> Άλλα -> Maven -> Maven Project -> Επόμενο
Βήμα 2: Τώρα το έργο θα μοιάζει με αυτό:
Βήμα # 3 : Προσθέστε παρακάτω εξαρτήσεις στο pom.xml
info.cukes cucumber-java 1.0.2 test info.cukes cucumber-junit 1.0.2 test junit junit 4.10 test
Βήμα # 4 : Δημιουργήστε ένα αρχείο sample.feature στο src / test / resources.
@smokeTest
χαρακτηριστικό : Για να δοκιμάσω το τεστ αγγουριού μου βρίσκεται σε εξέλιξη
Θέλω να εκτελέσω ένα δείγμα αρχείου δυνατοτήτων.
Σενάριο : ρύθμιση αγγουριού
Δεδομένος το δείγμα αρχείου χαρακτηριστικών είναι έτοιμο
Πότε Τρέχω το αρχείο χαρακτηριστικών
Επειτα το τρέξιμο πρέπει να είναι επιτυχές
Βήμα # 5 : Δημιουργήστε μια τάξη στο src / test / java που θα εφαρμόσει όλα τα βήματα.
public class stepDefinition { @Given('^sample feature file is ready$') public void givenStatment(){ System.out.println('Given statement executed successfully'); } @When('^I run the feature file$') public void whenStatement(){ System.out.println('When statement execueted successfully'); } @Then('^run should be successful$') public void thenStatment(){ System.out.println('Then statement executed successfully'); } }
Βήμα # 6 : Δημιουργήστε έναν δρομέα JUnit για να εκτελέσετε τη δοκιμή.
@RunWith(Cucumber.class) @Cucumber.Options(format={'pretty','html:reports/test-report'},tags= '@smokeTest') public class CucumberRunner { }
Καταχωρίστε τη διαδρομή της αναφοράς όπως δίνεται εδώ. Οι αναφορές θα αποθηκευτούν σε φάκελο 'test-report' κάτω από το φάκελο έργου και η 'όμορφη' μορφή καθορίζει τον τύπο της αναφοράς.
Βήμα # 7 : Αποτέλεσμα Junit και έκθεση δοκιμής:
Ακολουθεί η αναφορά όταν η δοκιμή αγγουριού είναι επιτυχής. Η πράσινη γραμμή στο Junit περιγράφει ότι η δοκιμή έχει περάσει. Ομοίως, η κόκκινη γραμμή περιγράφει ότι η δοκιμή απέτυχε.
Εάν θέλουμε να χρησιμοποιήσουμε την προεπιλεγμένη αναφορά, μεταβείτε στη διαδρομή που αναφέρεται στο Junit Runner. Σε αυτήν την περίπτωση, έχουμε δώσει μονοπάτι ως αναφορές-> δοκιμές-αναφορές-> index.html.
Ανοίξτε αυτήν την αναφορά στον Internet Explorer ή στον Firefox για να επαληθεύσετε το αποτέλεσμα. Ακολουθεί το δείγμα της αναφοράς:
Αγγούρι Selenium WebDriver Integration
Το αγγούρι πλαίσιο μπορεί να χρησιμοποιηθεί για να δοκιμάσει τις διαδικτυακές εφαρμογές μαζί με το Selenium WebDriver. Οι δοκιμαστικές θήκες γράφονται σε απλά αρχεία χαρακτηριστικών τα οποία είναι εύκολα κατανοητά από διαχειριστές, μη τεχνικούς ενδιαφερόμενους και επιχειρηματικούς αναλυτές. Και αυτά τα βήματα του αρχείου δυνατοτήτων εφαρμόζονται στο αρχείο ορισμού βημάτων. Εάν χρησιμοποιείτε το maven τότε πρέπει να προσθέσετε εξαρτήσεις για το Cucumber και το WebDriver.
Ακολουθεί λοιπόν η δοκιμαστική περίπτωση που έχουμε εφαρμόσει χρησιμοποιώντας το Cucumber και το WebDriver. Όπως δίνεται παρακάτω, το σενάριο στο αρχείο δυνατοτήτων είναι αυτονόητο.
Χαρακτηριστικό γνώρισμα: Αρχείο δυνατοτήτων σύνδεσης
@σελήνιο
Σενάριο : Δοκιμή σεναρίου σύνδεσης για το Gmail
Δεδομένος μεταβείτε στη σελίδα Gmail
Πότε ο χρήστης έχει συνδεθεί χρησιμοποιώντας το όνομα χρήστη ως 'userA' και τον κωδικό πρόσβασης ως 'password'
Επειτα αρχική σελίδα θα πρέπει να εμφανίζεται
Υλοποίηση WebDriver στο βήμα αγγουριού
public class stepDefinition { WebDriver dr; @Given('^navigate to gmail page$') public void navigate(){ dr=new FirefoxDriver(); dr.get('http://www.gmail.com'); } @When ('^user logged in using username as '(.*)' and password as '(.*)'$') public void login(String username,String password){ dr.findElement(By.xpath('//*[@id='Email']')).sendKeys(username); dr.findElement(By.xpath('//*[@id='Passwd']')).sendKeys(password); dr.findElement(By.xpath('//*[@id='signIn']')).click(); dr.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); } @Then('^home page should be displayed$') public void verifySuccessful(){ String expectedText='Gmail'; String actualText= dr.findElement(By.xpath('//*[@id='gbq1']/div/a/span')).getText(); Assert.assertTrue('Login not successful',expectedText.equals(actualText)); } }
Σε αυτήν τη δοκιμή, χρησιμοποιήσαμε τον Firefox ως πρόγραμμα περιήγησης για να δοκιμάσουμε τη λειτουργικότητα σύνδεσης του Gmail.
Είναι σαφές ότι το αντικείμενο WebDriver είναι μια μεταβλητή κλάσης και χρησιμοποιείται σε ολόκληρη την κλάση.
Δεδομένος Η δήλωση αρχικοποιεί το πρόγραμμα περιήγησης και μεταβαίνει στη σελίδα.
Πότε Η δήλωση συνδέεται στην εφαρμογή χρησιμοποιώντας το όνομα χρήστη ως 'userA' και τον κωδικό πρόσβασης ως 'password'. Τόσο οι τιμές «όνομα χρήστη» όσο και «κωδικός πρόσβασης» μεταβιβάζονται από το αρχείο δυνατοτήτων και και οι δύο τιμές που χρησιμοποιούνται με την ίδια σειρά.
Επειτα Η δήλωση επικυρώνει μόνο τους όρους μετά τη σύνδεση στην εφαρμογή.
Αυτό είναι ένα δείγμα δοκιμής που περιγράφει τη χρήση του Αγγουριού και του Σεληνίου. Μπορείτε να δημιουργήσετε πολυεπίπεδη αρχιτεκτονική ανάλογα με τις απαιτήσεις του έργου σας.
Συμπέρασμα:
Σε αυτό το Cucumber Selenium Java Integration Tutorial, έχουμε καλύψει τις περισσότερες από τις έννοιες Cucumber που περιλαμβάνουν τις λειτουργίες Cucumber και τη χρήση του μαζί με το WebDriver.
Αυτό μειώνει την πολυπλοκότητα του κώδικα που γράφεται για το σχεδιασμό των παραδοσιακών πλαισίων όπως το Keyword Driven και το Hybrid Framework. Το αγγούρι χρησιμοποιείται στο μεγαλύτερο μέρος του έργου, όπου οι άνθρωποι ακολουθούν ευέλικτη μεθοδολογία, καθώς η συμπεριφορά Driven Development είναι μια πρακτική λογισμικού Agile.
Επόμενο σεμινάριο # 32 : Έχουμε πλέον ολοκληρώσει όλα τα τεχνικά σεμινάρια από αυτήν τη σειρά προπόνησης Selenium. Στη συνέχεια, θα δημοσιεύσουμε για μερικά σημαντικά γενικά θέματα όπως «Εκτίμηση προσπάθειας για έργα σεληνίου» και «ερωτήσεις συνέντευξης σεληνίου με απαντήσεις».
Παρακαλώ δημοσιεύστε τα ερωτήματά σας σχετικά με το Cucumber Selenium Tutorial.
Συνιστώμενη ανάγνωση
- Εισαγωγή στο Selenium WebDriver - Selenium Tutorial # 8
- Έλεγχος αυτοματισμού με χρήση εργαλείου αγγουριού και σεληνίου - Σελήνιο σεμινάριο # 30
- Ενσωμάτωση σεληνίου με JMeter
- Ενσωμάτωση της Jenkins με το Selenium WebDriver: Εκμάθηση βήμα προς βήμα
- Υλοποίηση του πρώτου μας σεναρίου WebDriver - Selenium WebDriver Tutorial # 10
- Τρόπος χειρισμού ειδοποιήσεων / αναδυόμενων παραθύρων στο Selenium WebDriver - Selenium Tutorial # 16
- WebDriver Ολόκληρη εγκατάσταση και εγκατάσταση με Eclipse - Selenium Tutorial # 9
- Spock για ενσωμάτωση και λειτουργική δοκιμή με σελήνιο