Pergunta

Eu estou começando com Selenium IDE e tentando testar um webapp que está cheio de diálogos modais (window.showModalDialog) .

Gravar o teste parece funcionar (exceto não há nada no log quando o diálogo aparece), mas eles não são reproduzidas corretamente. O script realmente abre a janela (acionado por um clique de botão), mas, em seguida, apenas espera indefinidamente.

Todas as sugestões?

Foi útil?

Solução

do Selenium FAQ , selênio, aparentemente, funciona com alguns tipos de diálogos, mas outros não:

Eu não posso interagir com uma caixa de diálogo pop-up. Meu teste pára em suas faixas!

Você pode, mas somente se o diálogo é um alerta ou de diálogo de confirmação. De outros diálogos especiais não podem ser demitidos por javascript, e, assim, atualmente não pode ser interagiu com. Estes incluem o "Salvar Arquivo", "Lembrar esta senha" (Firefox) e diálogos modais (IE). Quando eles aparecem, selênio só pode torcer as mãos em desespero.

Para resolver esse problema, você pode usar um solução (se existir alguma); de outra forma você pode ter que excluir o teste de seu corpus automatizado. Para a "Save File" de diálogo no Firefox, um costume modelo pode ser especificado quando executado através do RC que sempre fará com que o arquivo a ser baixado para um determinado localização, sem consultar o usuário (Vejo http://forums.openqa.org/thread.jspa?messageID=31350). A caixa de diálogo "Lembrar esta senha" não deve aparecer novamente depois que você escolhido para lembrar. Atualmente há não é muito que pode ser feito sobre IE diálogos modais.

Eu me lembro de alguém que trabalha em torno deste com um AutoHotKey script que dispensou o diálogo.

Outras dicas

Eu tenho usado o Selenium IDE para modais teste jQuery por bastante tempo agora, eu nunca enfrentou qualquer problema. Aqui estão as coisas que eu faço para assegurar que o teste é executado corretamente na reprodução:

  • executar o script na menor velocidade possível
  • quando o modal abre, eu uso o comando waitForElementPresent para verificar a presença de pelo menos um dos elementos constitutivos na página; argumento ser, se um monte de elementos corretamente, é seguro assumir que todos os elementos e, portanto, a janela modal carregado corretamente.

Espero que isso ajude. Se você quiser mais ajuda, você pode compartilhar o código comigo alongwith o erro na execução que IDE joga fora a você.

Isto é como eu lidar com pop-up de alerta em Selenium IDE

clique direito sobre o elemento (neste caso, a janela pop-up), existem alguns comandos que você pode escolher. Há também um show de todos os comandos disponíveis whiche pode ser uma ajuda. Você deve usar AssertElementPreset e eu acho que a melhor localizador neste caso é CSS. Assim você pode escolher AssertElementPresent.

ou

Você pode usar dois comando em Selenium IDE

selectWindow | null
verifyElementPresent | css=div.content

Espero que isso ajude!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top