JasmineJS - ข้ามบล็อก
จัสมินยังอนุญาตให้นักพัฒนาข้ามกรณีทดสอบหนึ่งหรือมากกว่าหนึ่งกรณี สามารถใช้เทคนิคเหล่านี้ได้ที่ไฟล์Spec level หรือ Suite level. ขึ้นอยู่กับระดับของแอปพลิเคชันบล็อกนี้สามารถเรียกได้ว่าเป็นไฟล์Skipping Spec และ Skipping Suite ตามลำดับ
ในตัวอย่างต่อไปนี้เราจะเรียนรู้วิธีการข้ามเฉพาะ Spec หรือ Suite โดยใช้ “x” ตัวละคร.
ข้ามข้อมูลจำเพาะ
เราจะแก้ไขตัวอย่างก่อนหน้าโดยใช้ “x” ก่อนหน้านี้ it คำให้การ.
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;
});
});
หากเรารันโค้ด JavaScript นี้เราจะได้รับผลลัพธ์ต่อไปนี้เป็นผลลัพธ์ในเบราว์เซอร์ จัสมินเองจะแจ้งให้ผู้ใช้ทราบโดยเฉพาะit บล็อกคือ disabled ชั่วคราวโดยใช้ “xit”.
ข้ามห้องชุด
ในทำนองเดียวกันเราสามารถปิดการใช้งานบล็อกคำอธิบายเพื่อใช้เทคนิคของ Skipping 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();
});
});
โค้ดด้านบนจะสร้างภาพหน้าจอต่อไปนี้เป็นผลลัพธ์
ดังที่เราเห็นในแถบข้อความจะแสดงบล็อกข้อมูลจำเพาะสองรายการในสถานะรอดำเนินการซึ่งหมายความว่าบล็อก Spec ทั้งสองนี้ถูกปิดใช้งานโดยใช้ “x”ตัวละคร. ในบทต่อไปเราจะพูดถึงสถานการณ์การทดสอบจัสมินประเภทต่างๆ