В Karma\Jasmine есть варианы для игнорирования выборочных тестов - xit, xdescribe. В этом посте - разберусь, какие есть варианты для этого - в Jest.
Использование .skip для игнорирования только одного теста
В данном случае - запустится только один тест - первый, так как второй тест - будет пропущен, у него стоит test.skip:
describe ( ' my suite ' , () => {
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
// Этот тест будет пропущен
test . skip ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
В Jest для test.skip есть алиас по аналогии с Jasmine - xit; то есть по идее - можно написать так:
describe ( ' my suite ' , () => {
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
// Этот тест будет пропущен
xit ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
Ссылка из официальной документации - Test.Skip
Использование .skip для пропуска нескольких тестов
В данном случае - пропустится несколько тестов - первый и второй; третий - будет запущен:
describe ( ' my suite ' , () => {
// этот тест --> пропустится
test . skip ( ' one of my .only test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
// этот тест --> пропустится
test . skip ( ' other of my .only test ' , () => {
expect ( 1 + 2 ). toEqual ( 3 );
});
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
В Jest для test.skip есть алиас по аналогии с Jasmine - xit; то есть по идее - можно написать так:
describe ( ' my suite ' , () => {
// этот тест --> пропустится
xit ( ' one of my .only test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
// этот тест --> пропустится
xit ( ' other of my .only test ' , () => {
expect ( 1 + 2 ). toEqual ( 3 );
});
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
Ссылка из официальной документации - Test.Skip
Использование .skip для пропуска набора тестов
Для игнорирования набора тестов при запуске - также можно использовать .skip. В данном случае - запустятся тесты только из первого набора (‘first suite’), для которого установлено describe; второй набор тестов (‘second suite’) - будет пропущен, так как у него установлен describe.skip:
describe ( ' first suite ' , () => {
test ( ' one of my .only test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
});
// эти тесты --> не запустятся
describe . skip ( ' second suite ' , () => {
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
У .skip есть - алиас xdescribe; то есть, в Jest можно (по идее) написать по аналогии с Jasmine:
describe ( ' first suite ' , () => {
test ( ' one of my .only test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
});
// эти тесты --> не запустятся
xdescribe ( ' second suite ' , () => {
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
Ссылка из официальной документации - Describe.Skip
Использование .skip для игнорирования нескольких наборов тестов
Аналогично предыдущему вварианту, можно указать .skip для пропуска нескольких наборов тестов; в данном случае - будут запущены только два первых набора тестов:
// эти тесты --> запустятся
describe ( ' my suite ' , () => {
test ( ' one of my .only test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
});
// эти тесты --> запустятся
describe ( ' other suite ' , () => {
test ( ' other of my .only test ' , () => {
expect ( 1 + 2 ). toEqual ( 3 );
});
});
// эти тесты --> будут пропущены
describe . skip ( ' skipped other suite ' , () => {
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
У .skip в Jest есть - алиас xdescribe; то есть, в Jest можно (по идее) написать по аналогии с Jasmine:
// эти тесты --> запустятся
describe ( ' my suite ' , () => {
test ( ' one of my .only test ' , () => {
expect ( 1 + 1 ). toEqual ( 2 );
});
});
// эти тесты --> запустятся
describe ( ' other suite ' , () => {
test ( ' other of my .only test ' , () => {
expect ( 1 + 2 ). toEqual ( 3 );
});
});
// эти тесты --> будут пропущены
xdescribe ( ' skipped other suite ' , () => {
test ( ' my only true test ' , () => {
expect ( 1 + 1 ). toEqual ( 1 );
});
});
Ссылка из официальной документации - Describe.Skip