Maven & Jenkins Ενσωμάτωση με Selenium Εκμάθηση
Σε τι βρίσκεται ο Τζένκινς Selenium?
Το Jenkins είναι το κορυφαίο εργαλείο συνεχούς ενοποίησης ανοιχτού κώδικα που αναπτύχθηκε από το Hudson lab. Είναι cross-platform και μπορεί να χρησιμοποιηθεί σε Windows, Linux, Mac OS και Solaris περιβάλλοντα. Ο Τζένκινς είναι γραμμένος Java. Η κύρια χρήση του Jenkin είναι να παρακολουθεί οποιαδήποτε εργασία που μπορεί να είναι SVN checkout, cron ή οποιαδήποτε κατάσταση εφαρμογής. Ενεργοποιεί προρυθμισμένες ενέργειες όταν εμφανίζεται ένα συγκεκριμένο βήμα σε εργασίες.
Σημαντικά χαρακτηριστικά του Jenkins
- Υποστήριξη αλλαγής: Ο Jenkins δημιουργεί τη λίστα με όλες τις αλλαγές που γίνονται σε αποθετήρια όπως το SVN.
- Μόνιμοι σύνδεσμοι: Το Jenkins παρέχει απευθείας συνδέσμους με την πιο πρόσφατη έκδοση ή την αποτυχημένη έκδοση που μπορούν να χρησιμοποιηθούν για εύκολη επικοινωνία
- Εγκατάσταση: Το Jenkins είναι εύκολο να εγκατασταθεί είτε χρησιμοποιώντας αρχείο άμεσης εγκατάστασης (exe) είτε αρχείο πολέμου για ανάπτυξη χρησιμοποιώντας διακομιστή εφαρμογών.
- Ενσωμάτωση email: Το Jenkins μπορεί να ρυθμιστεί ώστε να στέλνει email στο περιεχόμενο της κατάστασης της έκδοσης.
- Εύκολη διαμόρφωση: Η διαμόρφωση διαφόρων εργασιών στο Jenkins είναι εύκολη.
- TestNG δοκιμή: Το Jenkins μπορεί να ρυθμιστεί ώστε να εκτελεί τη δοκιμή αυτοματισμού βασισμένη Testng μετά από κάθε κατασκευή του SVN.
- Πολλαπλά VM: Το Jenkins μπορεί να ρυθμιστεί ώστε να διανέμει το build σε πολλαπλά μηχανήματα.
- Κατασκευή έργου: Ο Jenkins τεκμηριώνει τις λεπτομέρειες του βάζου, την έκδοση του βάζου και τη χαρτογράφηση των αριθμών κατασκευής και βάζων.
- plugins: 3rd Το πρόσθετο party μπορεί να διαμορφωθεί στο Jenkins ώστε να χρησιμοποιεί λειτουργίες και πρόσθετες λειτουργίες.
Γιατί ο Τζένκινς και Selenium?
- Τρέξιμο Selenium Το tests στο Jenkins σάς επιτρέπει να εκτελείτε τις δοκιμές σας κάθε φορά που αλλάζει το λογισμικό σας και να αναπτύσσετε το λογισμικό σε νέο περιβάλλον όταν περάσουν οι δοκιμές.
- Ο Jenkins μπορεί να προγραμματίσει τις δοκιμές σας να εκτελεστούν σε συγκεκριμένη ώρα.
- Μπορείτε να αποθηκεύσετε το ιστορικό εκτέλεσης και τις αναφορές δοκιμών.
- Ο Jenkins υποστηρίζει τον Maven για την κατασκευή και Δοκιμές ένα έργο σε συνεχή ενοποίηση.
Σε τι βρίσκεται ο Maven Selenium?
Το Maven είναι ένα ισχυρό εργαλείο διαχείρισης έργου/κατασκευής, που βασίζεται στην ιδέα ενός POM (Project Object Model) που περιλαμβάνει πληροφορίες έργου και πληροφορίες διαμόρφωσης για το Maven, όπως κατάλογο κατασκευής, κατάλογος πηγής, εξάρτηση, κατάλογος πηγών δοκιμής, στόχοι, πρόσθετα κ.λπ. .
Γιατί Maven & Jenkins
Selenium Το WebDriver είναι εξαιρετικό για την αυτοματοποίηση του προγράμματος περιήγησης. Αλλά, όταν το χρησιμοποιείτε για δοκιμή και κατασκευή ενός πλαισίου δοκιμής, αισθάνεται ανεπαρκές. Ενσωμάτωση του Maven με Selenium παρέχει τα ακόλουθα οφέλη
Apache Maven παρέχει υποστήριξη για τη διαχείριση του πλήρους κύκλου ζωής ενός δοκιμαστικού έργου.
- Το Maven χρησιμοποιείται για τον ορισμό της δομής του έργου, των εξαρτήσεων, της κατασκευής και της διαχείρισης δοκιμών.
- Χρησιμοποιώντας το pom.xml(Maven) μπορείτε να διαμορφώσετε τις εξαρτήσεις που απαιτούνται για τη δοκιμή δόμησης και την εκτέλεση κώδικα.
- Το Maven κατεβάζει αυτόματα τα απαραίτητα αρχεία από το αποθετήριο κατά την κατασκευή του έργου.
Πώς να εγκαταστήσετε το Maven και να το χρησιμοποιήσετε με TestNG Selenium
Ακολουθούν τα βήματα για να εγκαταστήσετε το Maven και να το χρησιμοποιήσετε TestNG Selenium
Για αυτό το σεμινάριο, θα χρησιμοποιήσουμε Eclipse (Juno) IDE για Java Προγραμματιστές για ρύθμιση Selenium WebDriver Project. Επιπλέον, πρέπει να προσθέσουμε το πρόσθετο m2eclipse Eclipse για διευκόλυνση της διαδικασίας κατασκευής και δημιουργία αρχείου pom.xml.
Ας προσθέσουμε το πρόσθετο m2eclipse στο Eclipse με τα παρακάτω βήματα:
Βήμα 1) In Eclipse IDE, επιλέξτε Βοήθεια | Εγκαταστήστε νέο λογισμικό από Eclipse Κυρίως μενού.
Βήμα 2) Στο παράθυρο διαλόγου Εγκατάσταση, Πληκτρολογήστε τη διεύθυνση URL https://www.eclipse.org/m2e/. Επιλέγω Δουλεύω με και m2e plugin όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Βήμα 3) Κάντε κλικ στο Επόμενο κουμπί και ολοκληρώστε την εγκατάσταση.
Διαμορφώστε Eclipse με τον Maven
Με την εγκατάσταση του πρόσθετου m2e, τώρα πρέπει να δημιουργήσουμε το έργο Maven.
Βήμα 1) In Eclipse IDE, δημιουργήστε ένα νέο έργο επιλέγοντας Αρχεία | Νέα | ΑΛΛΑ από Eclipse μενού.
Βήμα 2) Στις Νέα διαλόγου, επιλέξτε Maven | Maven Project και κάντε κλικ στο Επόμενο
Βήμα 3) Στις New Maven Project διαλόγου επιλέξτε το Δημιουργήστε ένα απλό έργο και κάντε κλικ στο Επόμενο
Βήμα 4) Εισαγάγετε το WebdriverTest Αναγνωριστικό ομάδας: και Αναγνωριστικό τεχνουργήματος: και κάντε κλικ στο Τέλος
Βήμα 5) Eclipse θα δημιουργήσει WebdriverTest με την εξής δομή:
Βήμα 6) Κάντε δεξί κλικ στο Βιβλιοθήκη συστήματος JRE Και επιλέξτε το Ιδιοκτησίες από το μενού.
Στις Ιδιότητες για τη βιβλιοθήκη συστήματος JRE παράθυρο διαλόγου, βεβαιωθείτε Προεπιλεγμένο JRE χώρου εργασίας επιλέγεται και κάντε κλικ στο OK
Βήμα 7). Επιλέγω pom.xml από Εξερεύνηση έργου..
Το αρχείο pom.xml θα ανοίξει στην ενότητα Επεξεργαστής
Βήμα 8) Προσθέστε το Selenium, Maven, TestNG, Junit εξαρτήσεις σε pom.xml στο κόμβος:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>2.45.0</version> </dependency> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.8.8</version> <scope>test</scope> </dependency> </dependencies>
Βήμα 9) Δημιούργησε ένα νέο TestNG Τάξη. Εισαγάγετε το όνομα πακέτου ως "παράδειγμα" και "Νέα δοκιμή" στο Όνομα: πλαίσιο κειμένου και κάντε κλικ στο φινίρισμα κουμπί όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Βήμα 10). Eclipse θα δημιουργήσει την κλάση NewTest όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Βήμα 11) Προσθέστε τον ακόλουθο κώδικα στο NewTest τάξη:
Αυτός ο κωδικός θα επαληθεύσει τον τίτλο του Guru99 Selenium Σελίδα
package example; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.Test; import org.testng.annotations.BeforeTest; import org.testng.annotations.AfterTest; public class NewTest { private WebDriver driver; @Test public void testEasy() { driver.get("http://demo.guru99.com/test/guru99home/"); String title = driver.getTitle(); Assert.assertTrue(title.contains("Demo Guru99 Page")); } @BeforeTest public void beforeTest() { driver = new FirefoxDriver(); } @AfterTest public void afterTest() { driver.quit(); } }
Βήμα 12) Κάντε δεξί κλικ στο WebdriverTest και επιλέξτε TestNG | Μετατροπή σε TestNG.
Eclipse θα δημιουργήσει το testng.xml που λέει ότι πρέπει να εκτελέσετε μόνο ένα τεστ με το όνομα NewTest όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Ενημερώστε το έργο και βεβαιωθείτε ότι το αρχείο εμφανίζεται στο δέντρο Εξερεύνηση πακέτων (δεξί κλικ στο έργο – Ανανέωση).
Βήμα 13) Τώρα πρέπει να εκτελέσετε τη δοκιμή μέσω αυτού testng.xml.
Λοιπόν, πηγαίνετε στο Εκτέλεση ρυθμίσεων και δημιουργήστε μια νέα κυκλοφορία TestNG, επιλέξτε το έργο και το πεδίο Σουίτα as testng.xml και κάντε κλικ στην επιλογή Εκτέλεση
Βεβαιωθείτε ότι η κατασκευή ολοκληρώθηκε με επιτυχία.
Βήμα 14). Επιπλέον, πρέπει να προσθέσουμε
- maven-compiler-plugin
- προσθήκη maven-surefire-
- testng.xml
στο pom.xml.
Το maven-srefire-plugin χρησιμοποιείται για τη διαμόρφωση και την εκτέλεση δοκιμών. Εδώ χρησιμοποιείται η προσθήκη για τη διαμόρφωση του testing.xml για TestNG δοκιμή και δημιουργία εκθέσεων δοκιμών.
Το maven-compiler-plugin χρησιμοποιείται για να βοηθήσει στη μεταγλώττιση του κώδικα και στη χρήση της συγκεκριμένης έκδοσης JDK για μεταγλώττιση. Προσθέστε όλες τις εξαρτήσεις στο παρακάτω απόσπασμα κώδικα στο pom.xml στο κόμβος:
Βήμα 15) Για να τρέξετε ουe δοκιμές στον κύκλο ζωής Maven, κάντε δεξί κλικ στο WebdriverTest και επιλέξτε Εκτέλεση ως | Δοκιμή Maven. Ο Maven θα εκτελέσει τη δοκιμή από το έργο.
Βεβαιωθείτε ότι η κατασκευή ολοκληρώθηκε με επιτυχία.
Πώς να ενσωματώσετε το Jenkins με Selenium Πρόγραμμα οδήγησης Web
Ακολουθούν τα βήματα για να εγκαταστήσετε το Jenkins και να το ρυθμίσετε ώστε να εκτελέσει το Maven με το TestNg Selenium
Εγκατάσταση
Βήμα 1) Πηγαίνετε στο http://jenkins-ci.org/ και κατεβάστε το σωστό πακέτο για το λειτουργικό σας σύστημα. Εγκαταστήστε το Jenkins.
Βήμα 2) Αποσυμπιέστε το Jenkins στον καθορισμένο φάκελο. Εκτελέστε το αρχείο exe όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Βήμα 3) In Ρύθμιση Jenkins 1.607 κάντε κλικ στο παράθυρο Επόμενο κουμπί.
Βήμα 4) Κάντε κλικ στο εγκαταστήστε κουμπί στο τέλος.
Βήμα 5) Μόλις ολοκληρωθεί η εγκατάσταση, μεταβείτε στον πίνακα ελέγχου Jenkins (http://localhost:8080 από προεπιλογή) στο παράθυρο του προγράμματος περιήγησης.
Βήμα 6) Κάντε κλικ στο Νέο στοιχείο σύνδεσμος για τη δημιουργία μιας θέσης εργασίας CI.
Βήμα 7) Επιλέξτε το κουμπί επιλογής Maven project όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Χρησιμοποιώντας το Build a Maven Project επιλογή, η Jenkins υποστηρίζει την κατασκευή και τη δοκιμή έργων Maven.
Βήμα 8) Κάντε κλικ στο κουμπί ΟΚ. Μια νέα εργασία με το όνομα "WebdriverTest" δημιουργείται στον Πίνακα ελέγχου Jenkins.
Βήμα 9) Πηγαίνετε στο Διαχείριση της Jenkins => Διαμόρφωση συστήματος όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.
Κάντε κλικ στις εγκαταστάσεις JDK και διαμορφώστε το JDK όπως στο παρακάτω στιγμιότυπο οθόνης:
Βήμα 10) Πηγαίνετε στο Χτίστε τμήμα της νέας εργασίας.
- Στο Root POM πλαίσιο κειμένου, εισαγάγετε την πλήρη διαδρομή στο pom.xml
- Στην ενότητα Στόχοι και επιλογές, εισαγάγετε "καθαρή δοκιμή"
Βήμα 11) Κάντε κλικ στο Εγγραφές κουμπί.
Βήμα 12) Στη σελίδα του έργου WebdriverTest, κάντε κλικ στο Κατασκευάστε τώρα σύνδεσμο.
Ο Maven θα κατασκευάσει το έργο. Τότε θα έχει TestNG εκτελέσει τις δοκιμαστικές περιπτώσεις.
Βήμα 13) Μόλις ολοκληρωθεί η διαδικασία κατασκευής, στον Πίνακα ελέγχου Jenkins κάντε κλικ στο WebdriverTest σχέδιο
Βήμα 14) Η σελίδα του έργου WebdriverTest εμφανίζει το ιστορικό κατασκευής και συνδέσμους προς τα αποτελέσματα όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Βήμα 15) Κάντε κλικ στο σύνδεσμο «Τελευταίο αποτέλεσμα δοκιμής» για να δείτε τα αποτελέσματα των δοκιμών όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:
Βήμα 16). Επιλέξτε συγκεκριμένη κατασκευή και θα δείτε την τρέχουσα κατάσταση κάνοντας κλικ στο "έξοδος κονσόλας".
Προγραμματισμός Jenkins για αυτόματη εκτέλεση.
Προγραμματισμός κατασκευών (Selenium Tests) είναι ένα από τα σημαντικά χαρακτηριστικά του Jenkins όπου ενεργοποιεί αυτόματα το build, με βάση καθορισμένα κριτήρια. Το Jenkins παρέχει πολλούς τρόπους για την ενεργοποίηση της διαδικασίας δημιουργίας κάτω από τη διαμόρφωση Build Trigger.
Για παράδειγμα:
Εισαγάγετε 0 23 * * * στο πλαίσιο κειμένου Χρονοδιάγραμμα όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης. Αυτό θα ενεργοποιεί τη διαδικασία κατασκευής κάθε μέρα στις 11 μ.μ
Χρήση Jenkings χωρίς Maven
Για να εκτελέσετε το καθαρό σενάριο TestNg στο Jenkins, εισαγάγετε τα ακόλουθα στο build
D:>java -cp “Pathtolibfolder\lib\*;Pathtobinfolder\bin” org.testng.TestNG testng.xml
- Κάντε κλικ στο κουμπί Αποθήκευση.
- Σημείωση: Η πραγματική διαδρομή του φακέλου lib και bin πρέπει να προστεθεί στην παραπάνω εντολή.
- Μετά την αποθήκευση της εντολής, ο Jenkins θα δημιουργήσει το έργο σε προκαθορισμένο χρόνο και αυτή η εντολή θα εκτελεστεί χρησιμοποιώντας TestNG.
- Το αποτέλεσμα θα αποθηκευτεί σε προσαρμοσμένο αρχείο HTML αναφοράς που μπορεί να σταλεί μέσω email με διαμόρφωση Jenkin
- Η έξοδος του κώδικα θα είναι
Οφέλη από τη χρήση του Jenkins
- Πρώιμη εύρεση προβλημάτων – Το σφάλμα μπορεί να εντοπιστεί στην πρώιμη φάση της ανάπτυξης λογισμικού
- Αυτόματη ενοποίηση – δεν απαιτείται ξεχωριστή προσπάθεια για την ενσωμάτωση όλων των αλλαγών
- Εγκαταστάτης – ένα αναπτυσσόμενο σύστημα διαθέσιμο σε οποιοδήποτε σημείο ανάπτυξης
- Εγγραφές – διατηρούνται αρχεία κατασκευής ανταλλακτικών
- Υποστήριξη και πρόσθετα: Ένας από τους λόγους για τη δημοτικότητα του Jenkin είναι η διαθεσιμότητα μεγάλης υποστήριξης από την κοινότητα. Επίσης, υπάρχουν πολλά έτοιμα πρόσθετα που σας βοηθούν να επεκτείνετε τη λειτουργικότητά του.