I have the following problem, it turns out that I am using selenium with c # and when clicking on a sub-menu, the following error is displayed:
An exception of type 'OpenQA.Selenium.ElementNotVisibleException' occurred in AutomatizationAkzio.dll but was not handled in user code
Additional information: Can not click on element
My code is:
Utilitarios.IniciarEnIE(ParametrosEjecucion.RutaDelSitioProd);
PropiedadColeccionDriver.driver.SwitchTo().Frame("0");
Actions action = new Actions(PropiedadColeccionDriver.driver);
List<IWebElement> menu = Utilitarios.ObtieneElementosPorClase("middle");
IWebElement elemento = menu.FirstOrDefault(x => x.Text.Equals("CONFIGURADORES"));
action.MoveToElement(elemento).Click().Perform();
string page = PropiedadColeccionDriver.driver.PageSource;
IWebElement frameSubMenu = PropiedadColeccionDriver.driver.FindElement(By.TagName("iframe"));
PropiedadColeccionDriver.driver.SwitchTo().Frame(frameSubMenu);
List<IWebElement> subMenu = Utilitarios.ObtieneElementosPorClase("label-cell");
subMenu[3].Click(); //Aquí ocurre el problema
The Html of the iframe tag:
<div id="scroll-container" style="OVERFLOW: hidden">
<table cellspacing="0">
<tbody>
<tr>
<td class="empty-icon-cell"><span> </span></td>
<td class="label-cell" nowrap="">GRATIFICACION DE ACCESORIO</td>
<td class="shortcut-cell" nowrap=""> </td>
<td class="arrow-cell"> </td></tr>
<tr>
<td class="empty-icon-cell"><span> </span></td>
<td class="label-cell" nowrap="">GRATIFICACION RECURRENTE</td>
<td class="shortcut-cell" nowrap=""> </td>
<td class="arrow-cell"> </td></tr>
<tr>
<td class="empty-icon-cell"><span> </span></td>
<td class="label-cell" nowrap="">GRATIFICACION ONESHOT</td>
<td class="shortcut-cell" nowrap=""> </td>
<td class="arrow-cell"> </td></tr>
<tr>
<td class="empty-icon-cell"><span> </span></td>
<td class="label-cell" nowrap="">CONFIGURACION DE PROMOCIONES</td>
<td class="shortcut-cell" nowrap=""> </td>
<td class="arrow-cell"> </td></tr>
<tr>
<td class="empty-icon-cell"><span> </span></td>
<td class="label-cell" nowrap="">CONFIGURACION DE PROMOCIONES AL RUT</td>
<td class="shortcut-cell" nowrap=""> </td>
<td class="arrow-cell"> </td></tr></tbody></table>
</div>
Main Html
<HTML><HEAD>
<META content=private http-equiv=cache-control>
<META content=no-cache http-equiv=cache-control>
<META content="text/html; charset=iso-8859-1" http-equiv=content-type>
<META content=-1 http-equiv=expires>
<META content=-1 http-equiv=last-modified>
<META content=no-cache http-equiv=pragma><LINK rel=stylesheet type=text/css href="../css/entelpcs.css"><LINK rel=stylesheet type=text/css href="../css/classmenu.css">
<SCRIPT type=text/javascript src="../js/menu4/poslib.js"></SCRIPT>
<SCRIPT type=text/javascript src="../js/menu4/scrollbutton.js"></SCRIPT>
<SCRIPT type=text/javascript src="../js/menu4/menu4.js"></SCRIPT>
<STYLE type=text/css>
body
{
border: 0;
margin: 0;
overflow: hidden;
}
html
{
border: 0;
overflow: hidden;
}
.menu-bar
{
border-bottom: 2px groove;
}
p
{
font: Message-Box;
font: MessageBox;
margin: 10px;
}
.warning
{
color: red;
}
a
{
color: blue;
}
textarea
{
margin: 10px;
display: block;
width: auto;
}
</STYLE>
</HEAD>
<BODY leftMargin=0 topMargin=0>
<SCRIPT language=JavaScript>
<!--
var message="Copyright©Entel PCS Telecomunicaciones S.A.";
function click(e) {
if (document.all) {
if (event.button == 2) {
alert(message);
return false;
}
}
if (document.layers) {
if (e.which == 3) {
alert(message);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
// -->
</SCRIPT>
<TABLE id=table1 height=50 cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD height=50 background=../images/image015.jpg width=96> </TD>
<TD height=50 background=../images/image016.jpg align=right><B><FONT color=#ffffff size=1 face=Tahoma>SISTEMA PROMOCIONES HOGAR <BR>VERSIÓN 1.0.0.0 </FONT></B> </TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=left border=0 heigth="30">
<TBODY>
<TR>
<TD><!--prueba uno -->
<SCRIPT type=text/javascript>
var cssFile = "../css/classmenu.css";
Menu.prototype.cssFile = cssFile;
Menu.prototype.mouseHoverDisabled = false;
var Temporal;
var MenuBarra = new MenuBar();
var ArrNivelA = new Array();
ArrNivelA[0] = new Array(7);
ArrNivelA[0][0]='1';
ArrNivelA[0][1]='0';
ArrNivelA[0][2]='0';
ArrNivelA[0][3]='0';
ArrNivelA[0][4]='0';
ArrNivelA[0][5]='CONFIGURADORES';
ArrNivelA[0][6]='ruta1';
ArrNivelA[0][7]='';
ArrNivelA[1] = new Array(7);
ArrNivelA[1][0]='2';
ArrNivelA[1][1]='0';
ArrNivelA[1][2]='0';
ArrNivelA[1][3]='0';
ArrNivelA[1][4]='0';
ArrNivelA[1][5]='CONSULTA DE PROMOCIONES';
ArrNivelA[1][6]='ruta2';
ArrNivelA[1][7]='';
ArrNivelA[2] = new Array(7);
ArrNivelA[2][0]='3';
ArrNivelA[2][1]='0';
ArrNivelA[2][2]='0';
ArrNivelA[2][3]='0';
ArrNivelA[2][4]='0';
ArrNivelA[2][5]='MANTENEDOR DE PARAMETROS';
ArrNivelA[2][6]='ruta3';
ArrNivelA[2][7]='';
var ArrNivelB = new Array();
ArrNivelB[0] = new Array(7);
ArrNivelB[0][0]='1';
ArrNivelB[0][1]='1';
ArrNivelB[0][2]='0';
ArrNivelB[0][3]='0';
ArrNivelB[0][4]='0';
ArrNivelB[0][5]='GRATIFICACION DE ACCESORIO';
ArrNivelB[0][6]='ruta4';
ArrNivelB[0][7]='1';
ArrNivelB[1] = new Array(7);
ArrNivelB[1][0]='1';
ArrNivelB[1][1]='2';
ArrNivelB[1][2]='0';
ArrNivelB[1][3]='0';
ArrNivelB[1][4]='0';
ArrNivelB[1][5]='GRATIFICACION RECURRENTE';
ArrNivelB[1][6]='ruta5';
ArrNivelB[1][7]='1';
ArrNivelB[2] = new Array(7);
ArrNivelB[2][0]='1';
ArrNivelB[2][1]='3';
ArrNivelB[2][2]='0';
ArrNivelB[2][3]='0';
ArrNivelB[2][4]='0';
ArrNivelB[2][5]='GRATIFICACION ONESHOT';
ArrNivelB[2][6]='ruta6';
ArrNivelB[2][7]='1';
ArrNivelB[3] = new Array(7);
ArrNivelB[3][0]='1';
ArrNivelB[3][1]='4';
ArrNivelB[3][2]='0';
ArrNivelB[3][3]='0';
ArrNivelB[3][4]='0';
ArrNivelB[3][5]='CONFIGURACION DE PROMOCIONES';
ArrNivelB[3][6]='ruta7';
ArrNivelB[3][7]='1';
ArrNivelB[4] = new Array(7);
ArrNivelB[4][0]='1';
ArrNivelB[4][1]='5';
ArrNivelB[4][2]='0';
ArrNivelB[4][3]='0';
ArrNivelB[4][4]='0';
ArrNivelB[4][5]='CONFIGURACION DE PROMOCIONES AL RUT';
ArrNivelB[4][6]='ruta8';
ArrNivelB[4][7]='1';
ArrNivelB[5] = new Array(7);
ArrNivelB[5][0]='2';
ArrNivelB[5][1]='1';
ArrNivelB[5][2]='0';
ArrNivelB[5][3]='0';
ArrNivelB[5][4]='0';
ArrNivelB[5][5]='CONSULTA PROMOCIONES';
ArrNivelB[5][6]=ruta9';
ArrNivelB[5][7]='1';
ArrNivelB[6] = new Array(7);
ArrNivelB[6][0]='2';
ArrNivelB[6][1]='2';
ArrNivelB[6][2]='0';
ArrNivelB[6][3]='0';
ArrNivelB[6][4]='0';
ArrNivelB[6][5]='CONSULTA PROMOCIONES COMPLETO';
ArrNivelB[6][6]='ruta10';
ArrNivelB[6][7]='1';
ArrNivelB[7] = new Array(7);
ArrNivelB[7][0]='3';
ArrNivelB[7][1]='1';
ArrNivelB[7][2]='0';
ArrNivelB[7][3]='0';
ArrNivelB[7][4]='0';
ArrNivelB[7][5]='MANTENEDOR DE PARAMETROS';
ArrNivelB[7][6]='ruta11;
ArrNivelB[7][7]='1';
// VARIABLES PARA CREAR NIVELES.
nContadorNivelA = 3;
nContadorNivelB = 8;
nContadorNivelC = 0;
nContadorNivelD = 0;
nContadorNivelE = 0;
var MenuNivelB = new Menu();
var MenuNivelC = new Menu();
var MenuNivelD = new Menu();
var MenuNivelE = new Menu();
var MarcaC = 0;
var MarcaD = 0;
var MarcaE = 0;
// NIVEL A.
if (nContadorNivelA > 0)
{
for (var a=0; a < ArrNivelA.length; a++)
{
// NIVEL B.
if (nContadorNivelB > 0)
{
MenuNivelB = new Menu();
for (var b=0; b < ArrNivelB.length; b++)
{
MenuNivelC = new Menu();
MarcaC = 0;
if (ArrNivelA[a][0] == ArrNivelB[b][0])
{
// NIVEL C.
if (nContadorNivelC > 0)
{
for (var c=0; c < ArrNivelC.length; c++)
{
MenuNivelD = new Menu();
MarcaD = 0;
if ( (ArrNivelA[a][0] == ArrNivelC[c][0]) && (ArrNivelB[b][1] == ArrNivelC[c][1]) )
{
// NIVEL D.
if (nContadorNivelD > 0)
{
for (var d=0; d < ArrNivelD.length; d++)
{
MenuNivelE = new Menu();
MarcaE = 0;
if ( (ArrNivelA[a][0] == ArrNivelD[d][0]) && (ArrNivelB[b][1] == ArrNivelD[d][1]) && (ArrNivelC[c][2] == ArrNivelD[d][2]) )
{
// NIVEL E.
if (nContadorNivelE > 0)
{
for (var e=0; e < ArrNivelE.length; e++)
{
if ( (ArrNivelA[a][0] == ArrNivelE[e][0]) && (ArrNivelB[b][1] == ArrNivelE[e][1]) && (ArrNivelC[c][2] == ArrNivelE[e][2]) && (ArrNivelD[d][3] == ArrNivelE[e][3]) )
{
MenuNivelE.add(Temporal = new MenuItem( ArrNivelE[e][5] , ArrNivelE[e][6] ));
Temporal.target = ArrNivelE[e][7];
MarcaE++;
}
}
}
MarcaD++;
if (MarcaE == 0)
{
MenuNivelD.add(Temporal = new MenuItem( ArrNivelD[d][5] , ArrNivelD[d][6] ));
Temporal.target = ArrNivelD[d][7];
}
else
{
MenuNivelD.add( Temporal = new MenuItem( ArrNivelD[d][5], null, null, MenuNivelE ) );
Temporal.target = ArrNivelD[d][7];
}
}
}
}
MarcaC++;
if (MarcaD == 0)
{
MenuNivelC.add(Temporal = new MenuItem( ArrNivelC[c][5] , ArrNivelC[c][6] ));
Temporal.target = ArrNivelC[c][7];
}
else
{
MenuNivelC.add( Temporal = new MenuItem( ArrNivelC[c][5], null, null, MenuNivelD ) );
Temporal.target = ArrNivelC[c][7];
}
}
}
}
if (MarcaC == 0)
{
MenuNivelB.add( Temporal = new MenuItem( ArrNivelB[b][5], ArrNivelB[b][6] ) );
Temporal.target = ArrNivelB[b][7];
}
else
{
MenuNivelB.add( Temporal = new MenuItem( ArrNivelB[b][5], null, null, MenuNivelC ) );
Temporal.target = ArrNivelB[b][7];
}
}
}
}
// NIVEL A.
MenuBarra.add(Temporal = new MenuButton( ArrNivelA[a][5], MenuNivelB ) );
}
Temporal.mnemonic = a;
}
MenuBarra.write();
</SCRIPT>
<DIV id=-menu-cache-5 class=menu-bar unselectable="on"><SPAN class="menu-button active" unselectable="on"><SPAN class=left unselectable="on"></SPAN><SPAN class=middle unselectable="on">CONFIGURADORES</SPAN><SPAN class=right unselectable="on"></SPAN></SPAN><SPAN class="menu-button " unselectable="on"><SPAN class=left unselectable="on"></SPAN><SPAN class=middle unselectable="on">CONSULTA DE PROMOCIONES</SPAN><SPAN class=right unselectable="on"></SPAN></SPAN><SPAN class="menu-button " unselectable="on"><SPAN class=left unselectable="on"></SPAN><SPAN class=middle unselectable="on">MANTENEDOR DE PARAMETROS</SPAN><SPAN class=right unselectable="on"></SPAN></SPAN></DIV></TD></TR></TBODY></TABLE><IFRAME style="HEIGHT: 10px; WIDTH: 10px; POSITION: absolute; LEFT: -100px; TOP: -100px; VISIBILITY: hidden" frameBorder=0></IFRAME></BODY></HTML>