Gostaria de ajuda neste código. Não estou conseguindo selecionar uma opção no select. O meu código consegue percorrer toda lista, o valor passado como parâmetro está sendo capturado pela variável módulo, ou seja, quando peço para imprimir o valor da variável "modulo" -> o valor impresso é o mesmo que foi colocado na chamado do médodo. Mas ao executar o código está gerando esta exceção.
Segue o código HTML
<select data-placeholder="Escolha um módulo do sistema..." id="cabecalho" class="combo-pesquisa" style="width: 350px; display: none;" tabindex="-1" onchange="javascipt:changeSystem(this.value);">
<option value="208">ALMOXADM</option>
<option value="365">Auditoria</option>
<option selected="true" value="283">CDEM</option>
<option value="195">Contratos</option>
<option value="257">Contratos do SUS</option>
<option value="263">Convocações</option>
<option value="2">Descentralização de Créditos</option>
<option value="213">Eleição</option>
<option value="280">GAEP</option>
<option value="363">Gestão de Contratos</option>
<option value="358">Gestão de Portfólio de Projetos</option>
<option value="320">Hotelaria Hospitalar</option>
<option value="261">Jurídico</option>
<option value="248">Monitoramento de Obras</option>
<option value="7">Orçamentário e Financeiro</option>
<option value="356">Organograma</option>
<option value="48">Painel</option>
<option value="327">Patrimônio</option>
<option value="171">Pesquisa</option>
<option value="250">Pesquisa de Satisfação</option>
<option value="173">Processo Seletivo</option>
<option value="220">Progressão</option>
<option value="338">Projetos de Pesquisa</option>
<option value="169">Protocolo</option>
<option value="366">Requisições</option>
<option value="309">SGP</option>
<option value="279">SIGOF</option>
<option value="4">SIS</option>
<option value="254">Telefonia</option>
<option value="198">VigiHosp</option>
</select>
Este é o médoto que seleciona um elemento na lista.
public void escolheModulo(String modulo){
driver.manage().timeouts().implicitlyWait(113, TimeUnit.MILLISECONDS);
WebElement select = driver.findElement(By.tagName("select"));
List<WebElement> allOptions = select.findElements(By.tagName("option"));
select.getAttribute(modulo);
for (WebElement option : allOptions) {
//System.out.println(String.format("Value is: %s", option.getAttribute("value")));
//System.out.println(modulo);
if(option.getAttribute("value").equals(modulo)){
option.click();
}
else{
System.out.println("Módulo não encontrado");
}
}
Este é o código que chama o médodo acesso.escolheModulo("208");
Código de erro: org.openqa.selenium.ElementNotVisibleException: Element is not currently visible and so may not be interacted with Command duration or timeout: 232 milliseconds