Как вы упомянули, он официально еще не поддерживается (по состоянию на 3.6.0).
Вот мой взлом ( без использования файлов cookie и тому подобное для хранениясостояние):
// cypress/plugins/index.js
let shouldSkip = false;
module.exports = ( on ) => {
on('task', {
shouldSkip ( value ) {
if ( value != null ) shouldSkip = value;
return shouldSkip;
}
});
}
// cypress/support/index.js
function abortEarly () {
if ( this.currentTest.state === 'failed' ) {
return cy.task('shouldSkip', true);
}
cy.task('shouldSkip').then( value => {
if ( value ) this.skip();
});
}
beforeEach(abortEarly);
afterEach(abortEarly);
Пропустит все дальнейшие тесты, если возникнет ошибка. Вывод будет выглядеть так: