У меня есть страница, на которой есть реклама, иногда в iframe, иногда нет.
Проблема в том, что время ожидания страницы (60 с), даже если она выглядит загруженной.Я думаю, это может быть реклама или какое-либо другое отслеживание, поэтому я хотел бы добавить белый список к URL-адресу наших ресурсов, чтобы исключить любые объявления или подобные ресурсы.
Это может быть не на 100% точный способ тестирования, нодостаточно для нашего случая.
Я пытался использовать это в beforeEach (не оптимально, но если бы это работало, я бы превратил это в команду и поработал с ней)
cy.server({
whitelist(xhr) {
// Basicly, does it match any of whitelisted URLs?
console.log('whitelisting', xhr.url)
const url = new URL(xhr.url);
const URLwhitelist: string[] = Cypress.env('URLwhitelist');
if (!URLwhitelist.length) {
return true
}
return URLwhitelist.some(allowerdUrl => {
if (allowerdUrl.split('.').length == 2) {
return url.host.includes(allowerdUrl);
} else if (allowerdUrl.startsWith('*.')) {
allowerdUrl = allowerdUrl.slice(1);
return url.host.includes(allowerdUrl);
}
throw new Error(`Unparsable whitelist URL (${allowerdUrl})`);
});
}
});
Iтакже нашел какой-то вариант черного списка в cypress.json
, но мне нужен белый, а не черный список.