Δημιουργία JUnit Δοκιμαστική σουίτα με Παράδειγμα: @RunWith @SuiteClasses

Στο Junit, η σουίτα δοκιμών μας επιτρέπει να συγκεντρώνουμε όλες τις περιπτώσεις δοκιμής από πολλές κατηγορίες σε ένα μέρος και να τις εκτελούμε μαζί.

Για να εκτελέσετε τη δοκιμή σουίτας, πρέπει να σχολιάσετε μια τάξη χρησιμοποιώντας τους παρακάτω σχολιασμούς:

  1. @Runwith(Suite.class)
  2. @SuiteClasses(test1.class,test2.class……) ή@Suite.SuiteClasses ({test1.class, test2.class……})

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

Βήματα για τη δημιουργία Test Suite και Test Runner

Βήμα 1) Δημιουργήστε μια απλή κλάση δοκιμής (π.χ. MyFirstClassTest) και προσθέστε μια μέθοδο με σχολιασμό @test.

Βήματα για τη δημιουργία Test Suite και Test Runner

Βήμα 2) Δημιουργήστε μια άλλη κλάση δοκιμής για προσθήκη (π.χ. MySecondClassTest) και δημιουργήστε μια μέθοδο με σχολιασμό @test.

Βήματα για τη δημιουργία Test Suite και Test Runner

Βήμα 3) Για να δημιουργήσετε ένα testSuite, πρέπει πρώτα να προσθέσετε σχολιασμό στην τάξη με @RunWith(Suite.class) και @SuiteClasses(class1.class2…..).

Βήματα για τη δημιουργία Test Suite και Test Runner

Βήμα 4) Δημιουργήστε μια τάξη Test Runner για να εκτελέσετε τη δοκιμαστική σουίτα μας όπως δίνεται παρακάτω.

Βήματα για τη δημιουργία Test Suite και Test Runner

Επεξήγηση κώδικα:

  • Κωδικός Γραμμή 8: Δηλώνοντας την κύρια μέθοδο του τεστ της τάξης που θα εκτελέσει μας JUnit δοκιμή.
  • Κωδικός Γραμμή 9: Εκτέλεση περιπτώσεων δοκιμής χρησιμοποιώντας το JunitCore.runclasses που λαμβάνει το όνομα της κλάσης δοκιμής ως παράμετρο (Στο παραπάνω παράδειγμα, χρησιμοποιείτε το TestSuiteExample.class που φαίνεται στο βήμα 3).
  • Κωδικός Γραμμή 11: Επεξεργασία του αποτελέσματος χρησιμοποιώντας βρόχο for και εκτύπωση αποτυχημένου αποτελέσματος.
  • Κωδικός Γραμμή 13: Εκτύπωση του επιτυχημένου αποτελέσματος.

Παραγωγή: Ακολουθεί η έξοδος που δείχνει επιτυχημένη δοκιμή χωρίς ίχνος αποτυχίας όπως δίνεται παρακάτω:

Βήματα για τη δημιουργία Test Suite και Test Runner

JUnit Παράδειγμα δοκιμαστικής σουίτας

Εξετάστε ένα πιο σύνθετο παράδειγμα

JunitTest.java

Το JunitTest.java είναι μια απλή κλάση με σχολιασμό @RunWith και @Σουίτα σχολιασμοί. Μπορείτε να παραθέσετε τον αριθμό των .classes στη σουίτα ως παραμέτρους όπως δίνονται παρακάτω:

package guru99.junit;		
import org.junit.runner.RunWith;		
import org.junit.runners.Suite;		

@RunWith(Suite.class)				
@Suite.SuiteClasses({				
  SuiteTest1.class,
  SuiteTest2.class,  			
})		

public class JunitTest {				
			// This class remains empty, it is used only as a holder for the above annotations		
}

SuiteTest1.java

SuiteTest1.java είναι μια κλάση δοκιμής που έχει μια μέθοδο δοκιμής για την εκτύπωση ενός μηνύματος όπως δίνεται παρακάτω. Θα χρησιμοποιήσετε αυτήν την τάξη ως σουίτα στην παραπάνω κατηγορία.

package guru99.junit;		

import static org.junit.Assert.assertEquals;				

import org.junit.Test;		

public class SuiteTest1 {				

    public String message = "Saurabh";							

    JUnitMessage junitMessage = new JUnitMessage(message);							

    @Test(expected = ArithmeticException.class)					
    public void testJUnitMessage() {					

        System.out.println("Junit Message is printing ");					
        junitMessage.printMessage();			

    }		

    @Test		
    public void testJUnitHiMessage() {					
        message = "Hi!" + message;							
        System.out.println("Junit Hi Message is printing ");					
        assertEquals(message, junitMessage.printHiMessage());					
        System.out.println("Suite Test 2 is successful " + message);							
    }		
}		

SuiteTest2.java

SuiteTest2.java είναι μια άλλη κατηγορία δοκιμής παρόμοια με SuiteTest1.java έχοντας μια μέθοδο δοκιμής για να εκτυπώσετε ένα μήνυμα όπως δίνεται παρακάτω. Θα χρησιμοποιήσετε αυτήν την τάξη ως σουίτα JunitTest.java.

package guru99.junit;		

import org.junit.Assert;		
import org.junit.Test;		

public class SuiteTest2 {				
   	

    @Test		
    public void createAndSetName() {					
        		

        String expected = "Y";					
        String actual = "Y";					

        Assert.assertEquals(expected, actual);					
        System.out.println("Suite Test 1 is successful " + actual);							
    }		

}		

Παραγωγή

Μετά την εκτέλεση JunitTest.java που περιέχει μια σουίτα που έχει test1.java και test2.java, θα λάβετε την παρακάτω έξοδο:

SuiteTest2.Java Παραγωγή

SuiteTest2.Java Παραγωγή

Σύνοψη

Σε αυτό το σεμινάριο, έχετε μάθει τα βασικά στοιχεία για τη ζώνη δοκιμών και τις σουίτες δοκιμών λεπτομερώς με ένα παράδειγμα.

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