JasmineJS - Salta blocco

Jasmine consente inoltre agli sviluppatori di saltare uno o più casi di test. Queste tecniche possono essere applicate aSpec level o il Suite level. A seconda del livello di applicazione, questo blocco può essere chiamato come fileSkipping Spec e Skipping Suite rispettivamente.

Nell'esempio seguente, impareremo come saltare un file Spec o Suite utilizzando “x” personaggio.

Saltare spec

Modificheremo l'esempio precedente usando “x” appena prima it dichiarazione.

describe('This custom matcher example ', function() { 
   
   beforeEach(function() { 
      // We should add custom matched in beforeEach() function. 
      
      jasmine.addMatchers({ 
         validateAge: function() { 
            return { 
               compare: function(actual,expected) { 
                 var result = {}; 
                 result.pass = (actual > = 13 && actual < = 19); 
                 result.message = 'sorry u are not a teen ';  
                 return result; 
               }  
            };   
         }    
      });    
   });  
    
   it('Lets see whether u are teen or not', function() { 
      var myAge = 14; 
      expect(myAge).validateAge();  
   });
   
   xit('Lets see whether u are teen or not ', function() {  
      //Skipping this Spec 
      var yourAge = 18; 
   });
});

Se eseguiamo questo codice JavaScript, riceveremo il seguente output come risultato nel browser. Jasmine stesso notificherà all'utente che lo specificoit il blocco è disabled temporaneamente utilizzando “xit”.

Saltare la suite

Allo stesso modo, possiamo disabilitare il blocco di descrizione per implementare la tecnica di Skipping Suite. Nel seguente esempio, impareremo il processo di saltare il blocco della suite.

xdescribe('This custom matcher example ', function() {  
   
   //Skipping the entire describe  block  
   beforeEach(function() {  
   
      // We should add custom matched in beforeEach() function.  
      jasmine.addMatchers({  
         validateAge: function() {  
            return {   
               compare: function(actual,expected) {  
                 var result = {}; 
                 result.pass = (actual >=13 && actual<=19); 
                 result.message ='sorry u are not a teen '; 
                 return result;  
               }   
            };   
         }   
      });   
   });

   it('Lets see whether u are teen or not', function() {  
      var myAge = 14; 
      expect(myAge).validateAge(); 
   });  

   it('Lets see whether u are teen or not ', function() {  
      var yourAge = 18; 
      expect(yourAge).validateAge(); 
   });
});

Il codice sopra genererà il seguente screenshot come output.

Come possiamo vedere nella barra dei messaggi, mostra due blocchi delle specifiche nello stato in sospeso, il che significa che questi due blocchi delle specifiche sono disabilitati usando “x”personaggio. Nel prossimo capitolo, discuteremo diversi tipi di scenari di test di Jasmine.