WatiN点击元素不工作

时间:2014-05-07 07:27:52

标签: c# asp.net watin

您好我试图点击元素' a'使用WatiN(dll),我无法使用此元素进行click.Privous点击工作正常,但这个不起作用  这是我的代码

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();
*/

这里是Html页面

<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>

2 个答案:

答案 0 :(得分:0)

示例:

        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
    }
}  

答案 1 :(得分:0)

尝试找到元素,即T2元素中的父元素链接

browser2.TableRow(Find.ById("kyos_filaCuenta_00")).Link(Find.ById("kyos_enlaceIrAMovsCuenta_EUR0")).Click();