20 most popular testng interview questions
Κορυφαίες συχνές ερωτήσεις και ερωτήσεις συνέντευξης TestNG με παραδείγματα που βοηθούν στην προετοιμασία σας:
Μια λίστα με τις πιο δημοφιλείς και συχνές ερωτήσεις συνέντευξης και απαντήσεις στο TestNG εξηγούνται εδώ σε αυτό το άρθρο.
Απλά παραδείγματα προστίθενται στα ενδιαφερόμενα μέρη για την εύκολη κατανόηση της έννοιας. Είμαι βέβαιος ότι αυτές οι ερωτήσεις θα σας βοηθήσουν να ξεπεράσετε οποιαδήποτε συνέντευξη TestNG με επιτυχία.
Συχνές Ερωτήσεις Συνέντευξης TestNG
Q # 1) Τι είναι το TestNG;
Απάντηση: Το TestNG είναι το πλαίσιο που δημιουργήθηκε για την εκτέλεση δοκιμών μονάδας σε πρόγραμμα java από τους προγραμματιστές.
Το TestNG χρησιμοποιείται επίσης από τους δοκιμαστές λογισμικού για την αποτελεσματική εκτέλεση των αυτοματοποιημένων σεναρίων δοκιμής που δημιουργήθηκαν στο Selenium Webdriver. Η πλήρης μορφή του είναι το πλαίσιο «Δοκιμή Νέας Γενιάς».
νέος κόσμος του ιδιωτικού διακομιστή warcraft
Είναι εμπνευσμένο από το 'JUnit' που είναι ένα άλλο πλαίσιο για τη δοκιμή μονάδων προγραμμάτων Java. Εκτός από όλες τις δυνατότητες του JUnit, το TestNG διαθέτει τις νέες δυνατότητές του που το κάνουν πιο ισχυρό.
Ε # 2) Πώς θα εγκαταστήσετε το TestNG στο Eclipse;
Απάντηση:
Ακολουθήστε τα παρακάτω βήματα για να εγκαταστήσετε το TestNG στο Eclipse:
- Μεταβείτε στο Eclipse -> Κάντε κλικ στο 'Βοήθεια' -> Κάντε κλικ στο 'Εγκατάσταση νέου λογισμικού'.
- Κάντε κλικ στο κουμπί 'Προσθήκη', Εισαγάγετε το όνομα (κατά προτίμηση TestNG) στο πλαίσιο κειμένου 'Επόμενο'. Εισαγάγετε στο πλαίσιο κειμένου 'Τοποθεσία' και κάντε κλικ στο κουμπί 'OK'.
- Επιλέξτε το πλαίσιο ελέγχου TestNG και κάντε κλικ στο κουμπί 'Επόμενο'. Η εγκατάσταση θα ξεκινήσει και το Eclipse θα επανεκκινηθεί μετά την εγκατάσταση.
- Κάντε δεξί κλικ στο έργο στο Eclipse -> Επιλογή διαδρομής κατασκευής -> Διαμόρφωση διαδρομής δημιουργίας.
- Επιλέξτε την καρτέλα βιβλιοθήκη -> Κάντε κλικ στο κουμπί Προσθήκη βιβλιοθήκης -> Επιλέξτε TestNG-> Κάντε κλικ στο Επόμενο -> Κάντε κλικ στο Τέλος και Εφαρμογή και κλείσιμο.
Q # 3) Πώς να εκτελέσετε το σενάριο TestNG;
Απάντηση:
Για να εκτελέσετε το σενάριο TestNG:
Κάντε δεξί κλικ στην τάξη του Eclipse, κάντε κλικ στο 'Run as' και επιλέξτε 'TestNG test'.
Ή
Κάντε απευθείας κλικ στο κουμπί Εκτέλεση στη γραμμή εργαλείων του Eclipse.
Q # 4) Ποιοι είναι οι σχολιασμοί που χρησιμοποιούνται στο TestNG;
Απάντηση: Υπάρχουν τρεις ενότητες σχολιασμού στο TestNG:
(i) Σχολιασμοί προϋποθέσεων: Αυτά ταείναι οι σχολιασμοί TestNG που εκτελούνται πριν από τη δοκιμή.
@BeforeSuite, @BeforeClass, @BeforeTest, @BeforeMethod είναι οι σχολιασμοί προϋπόθεσης.
(ii) Σχολιασμός δοκιμής: Αυτός είναι ο σχολιασμός που αναφέρεται μόνο πριν από τη δοκιμαστική υπόθεση (Πριν από τη μέθοδο που γράφτηκε για την εκτέλεση της δοκιμαστικής υπόθεσης)
Το @Test είναι ο σχολικός σχολιασμός
(iii) Σχολιασμός μετά τη συνθήκη: Αυτοί είναι οι σχολιασμοί που εκτελούνται μετά τη δοκιμαστική υπόθεση. (Αφού γραφτεί η μέθοδος για την εκτέλεση της δοκιμαστικής θήκης)
@AfterSuite, @AfterClass, @AfterTest, @AfterMethod είναι οι σχολιασμοί μετά την κατάσταση
Ε # 5) Ποια είναι η ακολουθία εκτέλεσης των σχολιασμών στο TestNG;
Απάντηση: Η ακολουθία εκτέλεσης των σχολιασμών έχει ως εξής:
@BeforeSuite @BeforeTest @BeforeClass @BeforeMethod @Test @AfterMethod @AfterClass @Aftertest @AfterSuite
Q # 6) Ποια είναι τα πλεονεκτήματα του TestNG;
Απάντηση: Τα πλεονεκτήματα του TestNG είναι τα εξής:
- Είναι ένα πλαίσιο ανοιχτού κώδικα, επομένως είναι εύκολο να διαμορφωθεί.
- Χρησιμοποιώντας το TestNG μπορούμε να δημιουργήσουμε συστηματικά τις δοκιμαστικές θήκες.
- Δίνει πολλά σχόλια που με τη σειρά τους καθιστούν εύκολη τη δημιουργία δοκιμαστικής υπόθεσης.
- Χρησιμοποιώντας το TestNG, μπορούν να καθοριστούν οι προτεραιότητες των δοκιμών και η ακολουθία εκτέλεσης.
- Η ομαδοποίηση είναι δυνατή χρησιμοποιώντας το TestNG.
- Δημιουργεί αναφορές HTML (Το Selenium Webdriver δεν μπορεί να δημιουργήσει μόνο τις δοκιμαστικές αναφορές, βοηθά το SW να το επιτύχει).
- Η παραμετροποίηση δεδομένων είναι δυνατή χρησιμοποιώντας το TestNG.
- Εκτός από όλες τις λειτουργίες του JUnit, το TestNG έχει τις λειτουργίες του, το οποίο με τη σειρά του το καθιστά πιο ισχυρό.
Ε # 7) Πώς να ορίσετε προτεραιότητες στο TestNG;
Απάντηση: Υπάρχουν πάντα περισσότερες από μία δοκιμές ή μέθοδοι στην τάξη. Εάν δεν δώσουμε προτεραιότητα σε αυτές τις δοκιμές ή μεθόδους, τότε οι μέθοδοι επιλέγονται αλφαβητικά και εκτελούνται κατά την εκτέλεση.
Εάν θέλουμε να εκτελέσουμε τις δοκιμές με τη σειρά που θέλουμε, τότε πρέπει να ορίσουμε την προτεραιότητα μαζί με τον σχολιασμό @Test.
Αυτό μπορεί να γίνει ως εξής:
@Test (προτεραιότητα = 1), @Test (προτεραιότητα = 2)
Εξετάστε το ακόλουθο παράδειγμα:
@Test (priority=2) public void getText() { driver.findElement(By.id(“id”)).getText(); } @Test(priority=1) public void clickelement() { driver.findElement(By.id(“id”)).click(); }
Στο παραπάνω παράδειγμα, το clickelement () θα εκτελεστεί πρώτα καθώς η προτεραιότητα ορίζεται σε 1.
Και, το getText () θα εκτελεστεί μετά το clickelement () καθώς η προτεραιότητά του έχει οριστεί σε 2.
Ε # 8) Πώς να μοιραστείτε την αναφορά έργου χρησιμοποιώντας το TestNG;
Απάντηση: Υπάρχουν μερικοί τρόποι για να το κάνετε:
(Εγώ) Μετά την εκτέλεση της κλάσης TestNG, υπάρχει μια καρτέλα που ονομάζεται 'Αποτέλεσμα της κλάσης εκτέλεσης' που δημιουργείται δίπλα στην κονσόλα.
Μπορούμε να το αντιγράψουμε και να το μοιραστούμε.
(ii) Μετά την εκτέλεση της κλάσης TestNG,
- Κάντε δεξί κλικ στο όνομα του έργου και ανανεώστε
- Κάντε κλικ στο φάκελο 'Test-output'
- Κάντε δεξί κλικ στο αρχείο 'index.html' και επιλέξτε ιδιότητες
- Αντιγράψτε τον σύνδεσμο δίπλα στο 'Τοποθεσία'
Μπορούμε να μοιραστούμε αυτόν τον σύνδεσμο για να δούμε τη βασική έκθεση δοκιμής HTML που δημιουργείται από το TestNG.
Αυτό είναι το αρχείο που δημιουργείται αυτόματα στον υπολογιστή σας μετά την εκτέλεση της κλάσης χρησιμοποιώντας το TestNG.
Ε # 9) Πώς θα ορίσετε την ομαδοποίηση στο TestNG;
Απάντηση: Μπορούμε να ορίσουμε την ομαδοποίηση στο TestNG χρησιμοποιώντας το χαρακτηριστικό ομάδων όπως φαίνεται παρακάτω:
@Test (ομάδες = 'τίτλος')
Q # 10) Τι είναι η εξάρτηση από το TestNG;
Απάντηση: Υπάρχουν μερικές μέθοδοι στις οποίες εξαρτώνται πολλές μέθοδοι.
Για παράδειγμα, Εάν θέλουμε να δοκιμάσουμε οποιαδήποτε εφαρμογή και αν η σελίδα σύνδεσης της εφαρμογής δεν λειτουργεί, δεν θα μπορέσουμε να δοκιμάσουμε τα υπόλοιπα σενάρια.
Έτσι, το LoginTest είναι η μέθοδος στην οποία εξαρτώνται πολλές δοκιμές.
Ως εκ τούτου, θα γράψουμε ως εξής:
@Test(dependsOnMethods=”LoginTest”) Public void homePageLaunched() { }
Ο παραπάνω κώδικας δείχνει ότι η μέθοδος homePageLaunched () εξαρτάται πλήρως από τη μέθοδο LoginTest ().
Εάν περάσει το LoginTest (), τότε θα εκτελεστεί η μέθοδος homePageLaunched ()
Ε # 11) Τι είναι το InvocationCount στο TestNG;
Απάντηση: Εάν θέλουμε να εκτελέσουμε μια δοκιμαστική περίπτωση 'n' πολλές φορές, τότε μπορούμε να χρησιμοποιήσουμε το χαρακτηριστικό invocationCount όπως φαίνεται στο παρακάτω παράδειγμα.
Παράδειγμα:
@Test(invocationCount=8) Public void print() { }
Στο παραπάνω παράδειγμα, η μέθοδος εκτύπωσης () θα εκτελεστεί 8 φορές.
Ε # 12) Τι είναι το TimeOut στο TestNG;
Απάντηση: Εάν κάποια μέθοδος στο σενάριο απαιτεί πολύ χρόνο για να εκτελεστεί, τότε μπορούμε να τερματίσουμε αυτήν τη μέθοδο χρησιμοποιώντας το 'timeout' στο TestNG.
@ Δοκιμή (χρονικό όριο = 5000)
Σε αυτήν την περίπτωση, η μέθοδος θα τερματιστεί σε 5000 ms (5 δευτερόλεπτα) και η δοκιμαστική θήκη επισημαίνεται ως 'Αποτυχία'.
Ε # 13) Πώς να χειριστείτε τις εξαιρέσεις στο TestNG;
Απάντηση: Εάν υπάρχουν ορισμένες μέθοδοι από τις οποίες αναμένουμε κάποιες εξαιρέσεις, τότε μπορούμε να αναφέρουμε την εξαίρεση στον σχολιασμό @Test, ώστε η δοκιμαστική περίπτωση να μην αποτύχει.
Παράδειγμα: Εάν μια μέθοδος αναμένεται να έχει εξαίρεση 'numberFormatException', τότε η δοκιμαστική περίπτωση θα αποτύχει εξαιτίας αυτής της εξαίρεσης, εάν δεν έχει καθοριστεί μπλοκ δοκιμής.
Αλλά μπορούμε να το κάνουμε στο TestNG χρησιμοποιώντας το χαρακτηριστικό “expectException” ως εξής.
@Test (توقعException = numberFormatException.class)
Στη συνέχεια, η δοκιμαστική θήκη θα εκτελεστεί χωρίς αποτυχία.
Ε # 14) Ποιοι είναι οι συνηθισμένοι ισχυρισμοί TestNG;
Απάντηση: Οι συνήθεις ισχυρισμοί TestNG περιλαμβάνουν:
(Εγώ) Assert.assetEquals (String πραγματική, String αναμένεται);
- Δέχεται δύο χορδές.
- Εάν και οι δύο χορδές είναι ίσες, η δοκιμαστική θήκη εκτελείται με επιτυχία, διαφορετικά η θήκη δοκιμής αποτυγχάνει.
(ii) Assert.assertEquals (Συμβολοσειρά πραγματική, Αναμενόμενη συμβολοσειρά, Μήνυμα συμβολοσειράς)
- Δέχεται δύο χορδές.
- Εάν και οι δύο χορδές είναι ίσες, η δοκιμαστική θήκη εκτελείται με επιτυχία, διαφορετικά η θήκη δοκιμής αποτυγχάνει.
- Το μήνυμα εκτυπώνεται εάν αποτύχει η δοκιμαστική θήκη.
(iii) Assert.assertEquals (πραγματικό boolean, αναμενόμενο boolean)
- Δέχεται δύο δυαδικές τιμές.
- Εάν και οι δύο τιμές boolean είναι ίσες, η δοκιμαστική θήκη εκτελείται με επιτυχία, διαφορετικά η δοκιμαστική θήκη αποτυγχάνει.
(iv) Assert.assertTrue ()
- Δέχεται μια δυαδική τιμή.
- Ο ισχυρισμός περνά εάν η συνθήκη είναι True, αλλιώς εμφανίζεται ένα σφάλμα δήλωσης.
(v) Assert.assertFalse ()
ερωτήσεις συνέντευξης για υπηρεσίες ιστού σαπουνιού και υπολοίπου
- Δέχεται μια δυαδική τιμή.
- Ο ισχυρισμός περνά εάν η συνθήκη είναι Λάθος, αλλιώς εμφανίζεται σφάλμα σφάλματος.
(εμείς) Assert.assertTrue (, μήνυμα)
- Δέχεται μια δυαδική τιμή.
- Ο ισχυρισμός περνά αν η συνθήκη είναι True, αλλιώς εμφανίζεται ένα σφάλμα επιβεβαίωσης με το αναφερόμενο μήνυμα.
(έρχεσαι) Assert.assertFalse (, μήνυμα)
- Δέχεται μια δυαδική τιμή.
- Ο ισχυρισμός περνά εάν η συνθήκη είναι Λάθος, αλλιώς εμφανίζεται ένα σφάλμα επιβεβαίωσης με το αναφερόμενο μήνυμα.
Ε # 15) Πώς να απενεργοποιήσετε μια δοκιμή στο TestNG;
Απάντηση:
Για να απενεργοποιήσετε μια δοκιμή στο TestNG, πρέπει να χρησιμοποιήσουμε το χαρακτηριστικό 'enabled' ως εξής:
@Test (ενεργοποιημένο = 'false')
Q # 16) Ποιοι είναι οι τύποι Asserts στο TestNG;
Απάντηση: Για να επικυρώσουμε τα αποτελέσματα (περάσει / αποτύχει), πρέπει να χρησιμοποιήσουμε τον ισχυρισμό.
Υπάρχουν δύο τύποι ισχυρισμού στο TestNG:
(i) Σκληρός ισχυρισμός:
Το Hard Assert είναι ο κανονικός ισχυρισμός που χρησιμοποιείται για την επικύρωση της κλάσης TestNG.
Πρέπει να χρησιμοποιήσουμε την κατηγορία Assert για hard assert ως εξής:
Assert.assertEquals (πραγματική τιμή, αναμενόμενη τιμή);
Εάν το hard assert αποτύχει, τότε κανένας από τους κωδικούς δεν εκτελείται μετά τη δήλωση assert.
(ii) Soft Assert:
Εάν θέλουμε να συνεχίσουμε τη δοκιμαστική εκτέλεση ακόμα και μετά την αποτυχία της δήλωσης επιβεβαίωσης, τότε πρέπει να χρησιμοποιήσουμε το soft assert.
Για να δημιουργήσετε έναν απαλό ισχυρισμό, πρέπει να δημιουργήσουμε ένα αντικείμενο της κλάσης 'softAssert' ως εξής:
softAssert sassert = νέο softAssert ();
sassert.assertΌλα ();
Τώρα λοιπόν εάν η δοκιμαστική περίπτωση αποτύχει, η εκτέλεση δεν τερματίζεται όταν χρησιμοποιούμε soft assert.
Ε # 17) Πώς να περάσετε την παράμετρο στη δοκιμαστική θήκη μέσω του αρχείου testng.xml;
Απάντηση: Εάν έχουμε μια τάξη στην οποία ορίζεται μια μέθοδος σύνδεσης, τότε μπορούμε να περάσουμε τις παραμέτρους σύνδεσης σε αυτήν τη μέθοδο σύνδεσης από το αρχείο testing.xml
Θα πρέπει να χρησιμοποιήσουμε τον σχολιασμό '@parameters' ως εξής:
@Parameters({'user_name','password'}) @Test public void loginapp() { driverget(“appname”); driver.findElement(By.id(“login”)).sendkeys(user_name); driver.findElement(By.id(“password”)).sendkeys(password); }
Τώρα, μεταβείτε στο αρχείο testng.xml και εισαγάγετε τις παραμέτρους εκεί ως εξής:
“suitename” > ”testname” > ”user_name” value= ”user1” /> ”password” value = ”pass1” /> ”passingparameters” />
Q # 18) Ποια είναι η ανάγκη δημιουργίας ενός αρχείου testng.xml;
Απάντηση: Όταν δοκιμάζουμε ένα έργο χρησιμοποιώντας το Selenium Webdriver, έχει πολλά μαθήματα σε αυτό. Δεν μπορούμε να επιλέξουμε αυτά τα μαθήματα ένα προς ένα και να τα θέσουμε για αυτοματοποίηση. Ως εκ τούτου, πρέπει να δημιουργήσουμε μια σουίτα έτσι ώστε όλα τα μαθήματα να λειτουργούν σε μία δοκιμαστική σουίτα.
Μπορούμε να το επιτύχουμε δημιουργώντας ένα αρχείο testing.xml.
Q # 19) Πώς να δημιουργήσετε ένα αρχείο XML στο TestNG;
Απάντηση: Μεταβείτε στο φάκελο src -> κάντε κλικ στο αρχείο -> εισαγάγετε το όνομα του αρχείου (κυρίως γραπτό testing.xml)
Στη συνέχεια, κάντε κλικ στο φινίρισμα.
Έχουμε ένα κενό αρχείο XML. Εδώ, πρέπει να αναφέρουμε το όνομα του έργου και τις τάξεις που θα εκτελεστούν μαζί με το όνομα του πακέτου όπως φαίνεται παρακάτω.
'Testing project' > 'testing feature 1' > 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' />
Για να εκτελέσετε αυτό το αρχείο, πρέπει να μεταβείτε στο testng.xml στο πρόγραμμα περιήγησης πακέτου δεξί κλικ και να εκτελέσετε ως -> TestNG suite
Ε # 20) Πώς να ρίξετε μια εξαίρεση SKIP στο TestNG;
Απάντηση: Εάν θέλουμε να παρακάμψουμε οποιαδήποτε δοκιμή χρησιμοποιώντας δοκιμές, τότε πρέπει να χρησιμοποιήσουμε την εξαίρεση SKIP στο TestNG.
Είναι γραμμένο ως εξής:
public void skipExc() { System.out.println('SKIP me'); throw new skipException(“Skipping skipExc”); } }
Σας ευχόμαστε ό, τι καλύτερο για τη συνέντευξή σας !!
Συνιστώμενη ανάγνωση
- Ερωτήσεις και απαντήσεις συνέντευξης
- Ερωτήσεις συνέντευξης Spock με απαντήσεις (πιο δημοφιλείς)
- Κορυφαίες ερωτήσεις και απαντήσεις συνέντευξης 20+ .NET
- Ερωτήσεις και απαντήσεις συνέντευξης δοκιμών ETL
- Κορυφαίες 20 πιο σημαντικές ερωτήσεις και απαντήσεις συνέντευξης δοκιμών API
- Κορυφαίες 30+ δημοφιλείς ερωτήσεις και απαντήσεις συνέντευξης αγγουριών
- Κορυφαίες 50 πιο δημοφιλείς ερωτήσεις και απαντήσεις συνέντευξης CCNA
- Κορυφαίες 40 δημοφιλείς ερωτήσεις και απαντήσεις συνέντευξης J2EE που πρέπει να διαβάσετε