我是QA自动化的新手,我正在使用selenium。
我正在尝试从表格中选择一个打开的子菜单。我想选择的选项是“NuevaCartaCrédito”。
菜单中的代码是:
<div id='lmoptions' style="border-style: outset;font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 100%;height: 5px;position: absolute;background-color: #88BBD9;" >
<table id='lmoptionstable'>
<tr onmouseover="parent.highliterow(this)" onclick="parent.clickModule('immenu','IM','V', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Vista</label></td></tr>
<tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','I', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Nueva Carta Crédito</label></td></tr>
<tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','CP', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Preaviso Completo</label></td></tr>
<tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','A', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Enmienda</label></td></tr>
<tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','N', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Negociación</label></td></tr>
<tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','U', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Actualización</label></td></tr>
<tr onmouseover='parent.highliterow(this)' onclick="parent.clickModule('immenu','IM','W', this.children[0].innerText);parent.hidepopup();"><td><label style="font-size:10;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;width: 120px;overflow:hidden;">Bandeja de Trabajo</label></td></tr>
</table>
有人可以帮帮我吗?
答案 0 :(得分:2)
当您发布问题时,您应该插入解决问题的尝试:How do I ask a good question?
你可以这样做:
WebElement table= driver.findElementById("lmoptionstable");
WebElement el= table.findElement(By.xpath(".//tr/td/label[text()='Nueva Carta Crédito']"));
el.click();
答案 1 :(得分:1)
如果NuevaCartaCrédito选项可见,您只想点击它,只需使用此功能:
driver.findElementByXPath("//*[text()='Nueva Carta Crédito']").Click();
答案 2 :(得分:1)
如果您要点击的元素可见,
driver.findElementByXPath("//*[text()='Nueva Carta Crédito']").Click();
如果您想要点击的元素仅在鼠标悬停/悬停后可见,
Actions action = new Actions(driver);
WebElement elementToHover = driver.findElement(By.id("lmoptionstable"));
WebElement elementToClick = driver.findElement(By.xpath("//*[text()='Nueva Carta Crédito']"));
action.moveToElement(elementToHover).click(elementToClick).build().perform();