#python #selenium #dom #click #focus
Вопрос:
Я тестирую бота в facebook messenger с помощью selenium python и нажимаю на разные компоненты в чате. Он хорошо работает с моего компьютера, но как только я запускаю его с Дженкинса, selenium теряет фокус кликабельного элемента и в конечном итоге выдает ошибку тайм-аута, из-за которой мой тест завершается неудачей.
Я нашел обходной путь в этой статье https://ptc-it.de/work-around-focus-click-problem-in-selenium/ где автор объясняет, что мы должны сначала щелкнуть по незащищенному элементу из родительского div, чтобы получить фокус.
Проблема в том, что дом выглядит так:
<div class="l9j0dhe7 k4urcfbm">
<div class="o8kakjsu rpm2j7zs k7i0oixp gvuykj2m j83agx80 cbu4d94t d76ob5m9 eg9m0zos l9j0dhe7 du4w35lb qan41l3s c3g1iek1">
<div class="j83agx80 cbu4d94t buofh1pr l9j0dhe7">
<div class="nred35xi j83agx80 btwxx1t3 owycx6da jwdofwj8 dflh9lhu osnr6wyh scb9dxdr">
<button class="bp9cbjyn nred35xi pmh9v2dz do122s91 gvgeiihk fntpfh0s emml16de gmcszhul ols5edhi gob819ct rm35z8s5 rq0escxv nhd2j8a9 ihxqhq3m ekzkrbhg taijpn5t rs0gx3tq oi9244e8 dicw6rsg h676nmdw jm1wdb64 osnr6wyh d1544ag0 tw6a2znq jktsbyx5 hzawbc8m qv66sw1b">
<div class="j83agx80 cbu4d94t ew0dbk1b irj2b8pg">
<div class="qzhwtbm6 knvmm38d">
<span class="d2edcug0 hpfvmrgz qv66sw1b c1et5uql oi732d6d ik7dh3pa ht8s03o8 a8c37x1j keod5gw0 nxhoafnm aigsh9s9 d9wwppkn fe6kdd0r mau55g9w c8b282yb iv3no6db jq4qci2q a3bd9o3v knj5qynh oo9gr5id hzawbc8m" dir="auto">
<span class="a8c37x1j ni8dbmo4 stjgntxs l9j0dhe7 ltmttdrg g0qnabr5">🏁 Send and Finish</span>
</span>
</div>
</div>
</button>
</div>
I am clicking on the span that contains "Send and Finish", this is where the error occurs through Jenkins.
The problem is that this is from facebook app, so I am unable to grab any of those elements or ask the dev team to add elements in the DOM.
Can someone help please?
Комментарии:
1. Вы пытались обновить страницу, создав обработчик исключений, который перезагружает страницу при возникновении этой ошибки?