Mam pewien problem.
Nie wszystko oddalem na czerwiec… Jeden przedmiot mam na wrzesień. Strony WWW z Django.
Muszę oddać zadanie zaliczeniowe przez wakacje. Wymóg jest taki, że należy przygotować kompletny zestaw testów w Selenium.
No i na tym się naciąłem.
• Na stronie o całej Polsce ma być mapa Polski z podziałem na województwa. Województwa mają być klikalne i mają stanowić odnośniki do podstron o konretnych województwach. Ja to zaimplementowałem prosto: <map><area>…</area><area>…</area></map>
No ale z tego co mi wiadomo, Selenium nie może klikać na <area>
, bo tego tam nie zaimplementowano!!
• Django ma jednak pewne opóźnienia. Oznacza to, że ciąg poleceń typu self.selenium.find_element_by_cośtam(cośtam).click()
może rzucać wyjątki, bo selenium szybciej próbuje znajdować element na stronie, niż serwer testowy zdąży ten element wysłać! Pomogło self.selenium.implicitly_wait(10)
. Ale to nie wszystko. Selenium chyba losowo, z przyczyn dla mnie niepoznanych, czasami omija klikanie na jeden konkretny przycisk. Raz uruchomię test i Selenium klika. Drugi raz uruchomię i nie klika. Jak nie kliknie, to oczywiście później nie może znaleźć na stronie co tam powinno znaleźć, i jest wyjątek.
Jak to ogarnąć?
kmph