Όλα όσα πρέπει να γνωρίζετε για τους σχολιασμούς TestNG στο Σελήνιο



Αυτό το άρθρο σχετικά με το TestNG Annotations in Selenium θα σας βοηθήσει να κατανοήσετε τους διάφορους σχολιασμούς που το TestNG υποστηρίζει στο Selenium με τη βοήθεια παραδειγμάτων.

Από τότε που η ιδέα του έχει εισαχθεί, πολλές μεθοδολογίες δοκιμών έχουν εξελιχθεί, τα πρότυπα έχουν αλλάξει, αλλά οι απαιτήσεις κάπως θριάμβευσαν για να παραμείνουν σταθερές. Μια τέτοια μεθοδολογία είναι ΔοκιμήNG που μας βοηθά να ομαδοποιήσουμε τις δοκιμαστικές θήκες σε διαφορετικές ενότητες κώδικα με τη βοήθεια των σχολιασμών. Αλλά πώς λειτουργεί; Ας κατανοήσουμε αυτήν την ιδέα μέσα από αυτό το άρθρο σχετικά με το TestNG Annotations στο .

Θα καλύψω τα παρακάτω θέματα σε αυτό το άρθρο:





Εισαγωγή στο TestNG

ΔοκιμήNG σημαίνει Δοκιμάστε την επόμενη γενιά και είναι ένα πλαίσιο αυτοματισμού δοκιμής ανοιχτού κώδικα εμπνευσμένο από την JUnit και την NUnit. Καλά, ΔοκιμήNG δεν είναι μόνο εμπνευσμένο, αλλά είναι μια αναβαθμισμένη έκδοση αυτών των δύο πλαισίων. Ποια είναι λοιπόν η αναβάθμιση εδώ; Η αναβάθμιση με το TestNG είναι ότι παρέχει πρόσθετες λειτουργίες όπως δοκιμαστικοί σχολιασμοί, ομαδοποίηση, ιεράρχηση, παραμετροποίηση και τεχνικές αλληλουχίας στον κώδικα που δεν ήταν δυνατό νωρίτερα.

Εισαγωγή στο TestNG - Σχολιασμοί TestNG - EdurekaΔεν διαχειρίζεται μόνο περιπτώσεις δοκιμών, αλλά και λεπτομερείς αναφορές δοκιμών μπορούν επίσης να ληφθούν χρησιμοποιώντας το TestNG. Θα υπάρχει μια λεπτομερής περίληψη που θα εμφανίζει τον αριθμό των δοκιμαστικών περιπτώσεων που έχουν αποτύχει. Επίσης, τα σφάλματα μπορούν να εντοπιστούν με ακρίβεια και να διορθωθούν το νωρίτερο. Τώρα που γνωρίζετε τι είναι το TestNG, ας δούμε γιατί να χρησιμοποιήσετε το TestNG στο Selenium.



Γιατί να χρησιμοποιήσετε το TestNG στο Σελήνιο;

Οι προγραμματιστές λογισμικού από όλο τον κόσμο θα συμφωνήσουν ομόφωνα ότι η σύνταξη κώδικα σε δοκιμαστικές περιπτώσεις εξοικονομεί μεγάλο μέρος του χρόνου εντοπισμού σφαλμάτων. Γιατί; Αυτό συμβαίνει επειδή οι δοκιμαστικές υποθέσεις συμβάλλουν στη δημιουργία ισχυρού κώδικα χωρίς σφάλματα, σπάζοντας ολόκληρο τον κώδικα σε μικρότερες δοκιμαστικές περιπτώσεις και, στη συνέχεια, αξιολογώντας καθεμία από αυτές τις δοκιμαστικές περιπτώσεις σε συνθήκες επιτυχίας / αποτυχίας, μπορείτε να δημιουργήσετε κώδικα χωρίς σφάλματα. Από δεν υποστηρίζει την εκτέλεση κώδικα σε δοκιμαστικές περιπτώσεις, το TestNG έρχεται στην εικόνα που θα βοηθήσει στην εκτέλεση των δοκιμαστικών περιπτώσεων.

Το TestNG υποστηρίζει επίσης τις ακόλουθες δυνατότητες:

  • Δημιουργεί την αναφορά σε σωστή μορφή που περιλαμβάνει έναν αριθμό δοκιμαστικών περιπτώσεων που εκτελέστηκαν, τον αριθμό των αποτυχημένων δοκιμαστικών περιπτώσεων και τις δοκιμαστικές περιπτώσεις που έχουν παραλειφθεί.
  • Πολλαπλές δοκιμαστικές περιπτώσεις μπορούν να ομαδοποιηθούν πιο εύκολα μετατρέποντάς τις σε αρχείο TestNG.xml. Εδώ, μπορείτε να ορίσετε τις προτεραιότητες για την εκτέλεση των δοκιμαστικών περιπτώσεων.
  • Χρησιμοποιώντας το TestNG, μπορείτε να εκτελέσετε πολλές δοκιμαστικές περιπτώσεις σε πολλά προγράμματα περιήγησης, δηλαδή, δοκιμή μεταξύ προγραμμάτων περιήγησης .
  • Το πλαίσιο δοκιμών μπορεί εύκολα να ενσωματωθεί σε εργαλεία όπως Maven, Jenkins κ.λπ.

Τώρα που γνωρίζετε τι είναι το TestNG και γιατί χρησιμοποιείται, ας προχωρήσουμε περαιτέρω και να μάθουμε τους διάφορους σχολιασμούς που υποστηρίζει το TestNG στο Selenium.

Σχολιασμοί TestNG

Οι σχολιασμοί TestNG στο Σελήνιο χρησιμοποιούνται για τον έλεγχο της επόμενης μεθόδου που θα εκτελεστεί. Οι σχολικοί σχολιασμοί καθορίζονται πριν από κάθε μέθοδο στον κώδικα δοκιμής. Σε περίπτωση που καμία μέθοδος δεν προθετείται με σχολιασμούς, τότε αυτή η μέθοδος θα αγνοηθεί και δεν θα εκτελεστεί ως μέρος του κώδικα δοκιμής. Για τον ορισμό τους, οι μέθοδοι πρέπει να επισημαίνονται απλά με το « @Δοκιμή «.



Τύποι σχολιασμών TestNG:

Παρακάτω είναι η λίστα των σχολιασμών που υποστηρίζει το TestNG στο σελήνιο.

  • @BeforeMethod: Μια μέθοδος με αυτόν τον σχολιασμό θα εκτελεστεί πριν από κάθε @δοκιμή σχολιασμένη μέθοδος.
  • @AfterMethod: Αυτό ο σχολιασμός θα εκτελείται μετά από κάθε @δοκιμή σχολιασμένη μέθοδος.
  • @Πριν το μάθημα: Αυτός ο σχολιασμός θα εκτελεστεί πριν πρώτη @ δοκιμή εκτέλεση μεθόδου. Λειτουργεί μόνο μία φορά ανά τάξη.
  • @AfterClass: Τ Ο σχολιασμός του θα εκτελεστεί μετά την εκτέλεση όλων των μεθόδων δοκιμής στην τρέχουσα τάξη
  • @BeforeTest: Μια μέθοδος με αυτόν τον σχολιασμό θα εκτελεστεί πριν πρώτη @ δοκιμή σχολιασμένη μέθοδος.
  • @AfterTest: Μια μέθοδος με αυτόν τον σχολιασμό θα εκτελεστεί όταν όλα @Δοκιμή οι σχολιασμένες μέθοδοι ολοκληρώνουν την εκτέλεση αυτών των τάξεων στις οποίες περιλαμβάνεται η ετικέτα TestNG.xml αρχείο.
  • @BeforeSuite: Αυτός ο σχολιασμός θα εκτελεστεί μόνο μια φορά πριν έχουν εκτελεστεί όλες οι δοκιμές στη σουίτα
  • @AfterSuite: Θα εκτελεστεί μια μέθοδος με αυτόν τον σχολιασμό μια φορά μετά έχει εκτελεστεί η εκτέλεση όλων των δοκιμών στη σουίτα
  • @BeforeGroups: Αυτή η σχολιασμένη μέθοδος θα εκτελεστεί πριν από την πρώτη δοκιμαστική περίοδο αυτής της συγκεκριμένης ομάδας.
  • @AfterGroups: Αυτή η σχολιασμένη μέθοδος θα εκτελεστεί μετά από όλες τις μεθόδους δοκιμής αυτής της ομάδας ολοκληρώνει την εκτέλεση.

Αυτό λοιπόν αφορά τους σχολιασμούς στο TestNG. Τώρα ας προχωρήσουμε περαιτέρω και καταλάβουμε πώς να γράψουμε μια πρώτη δοκιμαστική θήκη χρησιμοποιώντας το TestNG.

Δημιουργία δοκιμαστικών περιπτώσεων χρησιμοποιώντας σχολιασμούς TestNG

Τα διάφορα βήματα που εμπλέκονται στη δημιουργία δοκιμαστικών περιπτώσεων χρησιμοποιώντας το TestNG Annotation είναι τα εξής:

  1. Δημιουργήστε ένα έργο και προσθέστε τη βιβλιοθήκη TestNG.
  2. Δημιουργήστε ένα αρχείο τάξης και κωδικοποιήστε το πρόγραμμα
  3. Τέλος, γράψτε το αρχείο XML και εκτελέστε το στο TestNG Suite.

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

Περίπτωση δοκιμής 1:

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

πακέτο co.edureka.pages εισαγωγή org.openqa.selenium.WebDriver import org.openqa.selenium.chrome.ChromeDriver import org.testng.Asert εισαγωγής org.testng.annotations.AfterTest εισαγωγή org.testng.annotations.BeforeTest εισαγωγή org.testng .annotations.Test Δημόσια τάξη Σχολιασμός Παράδειγμα {public String baseUrl = 'https://www.edureka.co/' String driverPath = 'C: //Users//Neha_Vaidya//Desktop//chromedriver_win32//chromedriver.exe' public WebDriver driver @BeforeTest public void launchBrowser () {System.out.println ('launching Chrome browser') System.setProperty ('webdriver.chrome.driver', driverPath) driver = νέο ChromeDriver () driver.get (baseUrl)} @Test public void verifyHomepageTitle () String waitingTitle = 'Εκπαιδευτική διαδικτυακή εκπαίδευση με καθοδήγηση εκπαιδευτή με 24X7 Lifetime Support @AfterTest public void terminateBrowser () {driver.close ()}}

Βασικά, θέλω να ελέγξω αν ο πραγματικός τίτλος της ιστοσελίδας Edureka ταιριάζει με τον αναμενόμενο τίτλο ή όχι. Έτσι, χρησιμοποιώ πρώτα το ' @BeforeTest » Σχολιασμός και δημιουργία μιας παρουσίας προγράμματος οδήγησης προγράμματος περιήγησης και πλοήγηση στον ιστότοπο Edureka χρησιμοποιώντας το driver.get () μέθοδος. Αυτά είναι λοιπόν τα βήματα που πρέπει να εκτελεστούν πριν από τη δοκιμή.

python __init__ τάξη

Στη συνέχεια, κατά τη διάρκεια αυτής της δοκιμής, θέλω να ελέγξω αν ο αναμενόμενος τίτλος και ο πραγματικός τίτλος ταιριάζουν ή όχι. Γι 'αυτό καθορίζω όλα τα βήματα με το @Test Annotation. Τέλος, θέλω να κλείσω το πρόγραμμα οδήγησης και να τερματίσω το πρόγραμμα περιήγησης μετά τη δοκιμή. Γι 'αυτό χρησιμοποιώ @AfterTest Σχολιασμός και κλείσιμο του προγράμματος οδήγησης. Έτσι λοιπόν ομαδοποιώ ολόκληρο τον κώδικα σε διάφορους σχολιασμούς και εκτελώ τη δοκιμαστική θήκη. Ας εκτελέσουμε το πρόγραμμα ως TestNG Test και ελέγξτε την έξοδο.

Μπορείτε να δείτε στο στιγμιότυπο ότι η δοκιμαστική θήκη εκτελείται με επιτυχία σε μια προεπιλεγμένη δοκιμή και σουίτα. Επίσης, η δοκιμαστική θήκη πέρασε και δεν υπάρχει επίσης αποτυχία.

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

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

Περίπτωση δοκιμής 2:

πακέτο co.edureka.pages εισαγωγή org.testng.annotations.AfterClass import org.testng.annotations.AfterMethod import org.testng.annotations.AfterSuite import org.testng.annotations.AfterTest εισαγωγή org.testng.annotations.BeforeClass εισαγωγή org.testng .annotations.BeforeMethod εισαγωγή org.testng.annotations.BeforeSuite import org.testng.annotations.BeforeTest import org.testng.annotations.Test public class testngAnnotations {// Test Case 1 @Test public void testCase1 () {System.out.println ('Test Case 1')} // Test Case 2 @Test public void testCase2 () {System.out.println ('Test Case 2')} @BeforeMethod δημόσιο κενό πριν από τη μέθοδο () {System.out.println ('Before Μέθοδος ')} @AfterMethod public void afterMethod () {System.out.println (' After Method ')} @BeforeClass public void beforeClass () {System.out.println (' Before Class ')} @AfterClass public void afterClass ( ) {System.out.println ('After Class')} @BeforeTest δημόσιο κενό πριν από τη δοκιμή () {System.out.println ('Before Test')} @AfterTest δημόσιο κενό afterTest () {System.out.println ('After Test')} @BeforeSuite public void beforeSuite () {System.out.println ('Before Suite')} @AfterSuite public void afterSuite () {System.out.println () 'After Suite')}}

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

[RemoteTestNG] εντοπίστηκε TestNG έκδοση 6.14.2 Πριν από το Suite Πριν από τη δοκιμή Πριν από την τάξη Πριν από τη μέθοδο Test Case 1 After Method Before Method Test Case 2 After Method After Class After PASSED: testCase1 PASSED: testCase2 =========== ==================================== Προεπιλεγμένη δοκιμή Οι δοκιμές εκτελούνται: 2, Αποτυχίες: 0, Παράλειψη: 0 =============================================== After Suite = ============================================== Προεπιλεγμένη σουίτα Σύνολο δοκιμών εκτέλεση: 2, Αποτυχίες: 0, Παράλειψη: 0 ======================================= ========

Από την παραπάνω έξοδο, μπορείτε να παρατηρήσετε ότι εκτέλεσε τόσο τις δοκιμαστικές περιπτώσεις όσο και το Before Suite και το After Suite εκτελέστηκαν μόνο μία φορά. Επίσης, η δοκιμή εκτελέστηκε με επιτυχία στην προεπιλεγμένη δοκιμή και τη σουίτα. Έτσι πρέπει να εκτελέσετε τις δοκιμαστικές περιπτώσεις χρησιμοποιώντας σχολιασμούς.Αυτό μας φέρνει στο τέλος αυτού του άρθρου σχετικά με το TestNG Annotations στο Σελήνιο.

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

Αν βρήκατε αυτό το 'TestNG Σχολιασμοί στο Σελήνιο ' σχετικό, δείτε το από την Edureka, μια αξιόπιστη διαδικτυακή εταιρεία εκμάθησης με δίκτυο περισσότερων από 250.000 ικανοποιημένων μαθητών σε όλο τον κόσμο.

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων του Σχολιασμοί TestNG στο Σελήνιο άρθρο και θα επικοινωνήσουμε μαζί σας.