JasmineJS - Bỏ qua khối

Jasmine cũng cho phép các nhà phát triển bỏ qua một hoặc nhiều trường hợp thử nghiệm. Những kỹ thuật này có thể được áp dụng tạiSpec level hoặc là Suite level. Tùy thuộc vào mức độ ứng dụng, khối này có thể được gọi làSkipping SpecSkipping Suite tương ứng.

Trong ví dụ sau, chúng ta sẽ học cách bỏ qua một Spec hoặc là Suite sử dụng “x” tính cách.

Thông số bỏ qua

Chúng tôi sẽ sửa đổi ví dụ trước bằng cách sử dụng “x” ngay trước đó it tuyên bố.

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; 
   });
});

Nếu chúng tôi chạy mã JavaScript này, chúng tôi sẽ nhận được kết quả sau là kết quả trong trình duyệt. Bản thân Jasmine sẽ thông báo cho người dùng rằngit khối là disabled tạm thời sử dụng “xit”.

Skipping Suite

Theo cách tương tự, chúng ta có thể vô hiệu hóa khối mô tả để triển khai kỹ thuật Skipping Suite. Trong ví dụ sau, chúng ta sẽ tìm hiểu về quá trình bỏ qua khối bộ.

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(); 
   });
});

Đoạn mã trên sẽ tạo ra ảnh chụp màn hình sau làm đầu ra.

Như chúng ta có thể thấy trong thanh thông báo, nó hiển thị hai khối thông số kỹ thuật ở trạng thái đang chờ xử lý, có nghĩa là hai khối thông số này bị vô hiệu hóa bằng cách sử dụng “x”tính cách. Trong chương sắp tới, chúng ta sẽ thảo luận về các loại kịch bản thử nghiệm Jasmine khác nhau.