Webdriver executescript és executeasyncscript, elektromos torony

Lássuk, milyenek ezek a módszerek a szakrális jelentéssel és fő különbséggel.
executeScript
- Az ehhez a java-módszerhez küldött parancsfájl a kiválasztott keret vagy ablak kontextusában fut.
- Ez egy névtelen feladat teste.
- Ebben a szkriptben a dokumentumobjektum az aktuális dokumentumra hivatkozva használható. Ez azt jelenti, hogy végrehajthatsz egy olyan Java szkriptet, amely például tartalmazza ezt a sort: getElementById ("id").
- A szkript végrehajtása után a helyi változók nem lesznek elérhetők, bár a globálisak megmaradnak. Ez az elem lehetővé teszi az oldal globális változóinak módosítását.
- Ha a szkriptnek visszatérési értékei vannak, akkor a Java objektumokra történő konvertálás a következőképpen alakul:
- A Html elemet WebElement-be alakítjuk át
- Decimális - dupla
- Nem decimális szám - Hosszú
- Boolean - Boolean
- Más esetekben a String visszakerül
- A tömb a fenti szabályok szerint átalakított objektumok listájává alakul át. FONTOS! A listák beágyazhatók! Ie Ha egy kétdimenziós tömb átkerül a JS-ből, akkor a listák listájává válik.
Figyeljen oda. Az ExecuteScript nem primitíveket, hanem objektumokat ad vissza! Ezt a későbbiekben figyelembe kell venni.
- Ha a szkript nem ad vissza semmit, akkor a módszer nulla értéket ad vissza.
- A szkripthez továbbított értékek lehetnek számok, logikai értékek, karakterláncok, WebElement vagy listák. Használhatja őket a JS-ben, mint az argumentum tömb elemei. Ie ha átmegy a executeScript módszerrel, mondja a WebElement. majd rákattintva a következő JS-kódot lehet megadni: argumentumok [0] .click ();