点击元素不工作
本文关键字:工作 元素 | 更新日期: 2023-09-27 18:02:18
你好,我试图用WatiN(dll)点击元素'a',我无法得到这个元素来点击。以前的点击工作正常,但这一个不工作这里是我的代码
var browser = new IE("https://www.tesst.com");
browser2.TableRow(Find.ById("kyos_filaCuenta_00")).FireEvent("onmouseover");
browser2.Link(Find.ById("kyos_enlaceIrAMovsCuenta_EUR0")).Click();
/*i tried this one too
TableCell tb = browser2.TableCell(Find.ByClass("kyos_positionFirstElementTd ancho200 columna0"));
Link link = tb.Link(lnk => lnk.GetAttributeValue("onclick").ToLower().Contains(".close(true)"));
link.Click();
*/
Here Html page
<tbody>
<tr id="kyos_filaCuenta_00" class="cuentaNoFavorita">
<td class="ancho20 kyos_anchoCheckTd">
<td class="kyos_positionFirstElementTd ancho200 columna0">
<a id="kyos_enlaceIrAMovsCuenta_EUR0" class="cursorPointer numCuenta" onclick="kyos_irAMovsCuenta('ES9601824649840201502683','','EUR','','BANCO BILBAO VIZCAYA ARGENTARIA S.A','20199802','false','','VISONIC IBERICA DE SEGURIDAD S.L.');return false;">ES9601824649840201502683</a>
</td>
<td class=" columna1">
</tbody>
示例:
var _driver = new ChromeDriver();// or new IE()
_driver.Navigate().GoToUrl("https://www.tesst.com");
_driver.FindElement(By.Id(element)).Click();
//do what you need
_driver.Quit();
更合适的方法是设置单元测试,类似于(使用resharper插件运行测试):
[TestFixture]
class LoginTest
{
[TestFixtureSetUp]
public void FixtureSetup()
{
_driver = new ChromeDriver();
_driver.Navigate().GoToUrl("https://www.tesst.com");
}
[TestFixtureTearDown]
public void FixtureTearDown()
{
_driver.Quit();
}
[TestCase("kyos_enlaceIrAMovsCuenta_EUR0")]
public void PaywallClosedArticleCommertialTest(string element)
{
_driver.FindElement(By.Id(element)).Click();
//add assert
}
}
尝试在T2元素中查找元素,即链接,该元素是父元素
browser2.TableRow(Find.ById("kyos_filaCuenta_00")).Link(Find.ById("kyos_enlaceIrAMovsCuenta_EUR0")).Click();