Domanda

Il seguente comando

selenium.click("link=Identify Awards");

Apre un popup, tuttavia il test non continua

Ho messo

selenium.waitForPopUp(null, "1500");
selenium.windowFocus();
selenium.selectPopUp("Search -- Webpage Dialog");

Dopo il comando Click inutile, il collegamento è a una funzione Java.

So che questo comando fa clic su un link, un pulsante, una casella di controllo o un pulsante di opzione. Se l'azione clicca provoca il caricamento di una nuova pagina (come un link di solito), chiamawaitForPageToLoad. Penso che il waitforPageToLoad non sta registrando il caricamento popup

Aggiornare

Ho provato quanto segue

selenium.fireEvent("link=Identify Awards", "onClick");

E ho ottenuto quanto segue

Il popup è su un altro dominio potrebbe essere la causa?

Exception in thread "Main Thread" org.openqa.selenium.ie.UnexpectedJavascriptExecutionException: Cannot execute script
System info: os.name: 'Windows Vista', os.arch: 'x86', os.version: '6.1', java.version: '1.5.0_12'
Driver info: driver.version: ie
    at org.openqa.selenium.ie.ErrorHandler.verifyErrorCode(ErrorHandler.java:70)
    at org.openqa.selenium.ie.InternetExplorerDriver.executeScript(InternetExplorerDriver.java:205)
    at org.openqa.selenium.internal.seleniumemulation.JavascriptLibrary.callEmbeddedSelenium(JavascriptLibrary.java:47)
    at org.openqa.selenium.internal.seleniumemulation.FireEvent.handleSeleneseCommand(FireEvent.java:35)
    at org.openqa.selenium.internal.seleniumemulation.FireEvent.handleSeleneseCommand(FireEvent.java:1)
    at org.openqa.selenium.internal.seleniumemulation.SeleneseCommand.apply(SeleneseCommand.java:33)
    at org.openqa.selenium.internal.seleniumemulation.Timer.run(Timer.java:47)
    at org.openqa.selenium.WebDriverCommandProcessor.execute(WebDriverCommandProcessor.java:277)
    at org.openqa.selenium.WebDriverCommandProcessor.doCommand(WebDriverCommandProcessor.java:209)
    at com.thoughtworks.selenium.DefaultSelenium.fireEvent(DefaultSelenium.java:201)
È stato utile?

Soluzione

uso selenium.selectWindow Per selezionare popup e quindi utilizzare selenium.selectWindow(null) Per selezionare la finestra di base. Non hai descritto come tipo di popup. È una casella di conferma o una cornice o una finestra di dialogo del modello o semplicemente un'altra finestra. Il selenio differisce nel trattamento di tutti questi

Altri suggerimenti

Ho scoperto che in alcune occasioni in cui attivare JavaScript in particolare la funzione Click di Selenium non invoca correttamente gli elementi OnClick e questo potrebbe essere il problema che stai riscontrando.

In tal caso, prova a usare quanto segue per licenziare esplicitamente l'evento OnClick:

selenium.fire_event("link=Identify Awards", "onClick")

Spero possa aiutare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top