Что ж, проще всего было бы злоупотребить тем фактом, что запрос к серверу Selenium (используя $ / элемент ) неразрывная операция .
Предположим, вам нужно запросить 2 элемента, один из которых отрисован внутри DOM, другой нет ( или элемент не существует вообще ).
let thisLoaded = $('span.coreSpriteFacebookIconInverted');
let thisDidnt = $('span.coreSpriteInstagramIconInverted');
Две переменные будут иметь следующее содержимое:
thisDidnt = {
sessionId: '7056961e1950b5c54827a51c137cca96',
value: { ELEMENT: '0.8611270215748772-1',
'element-6066-11e4-a52e-4f735466cecf': '0.8611270215748772-1' },
selector: 'span.coreSpriteFacebookIconInverted',
_status: 0
}
thisDidnt = {
type: 'NoSuchElement',
message: 'An element could not be located on the page using the given search parameters.',
state: 'failure',
sessionId: '7056961e1950b5c54827a51c137cca96',
value: null,
selector: 'span.coreSpriteInstagramIconInverted'
}
Таким образом, теперь вы можете приступить к проверке ...
if (thisLoaded.value) {
// > if element loaded <
} else {
// > if element didn't load <
}
Я добавлю больше, когда вернусь домой ...