【问题标题】:How to read click multiple same href to get the value using findby element using css如何读取单击多个相同的href以使用css使用findby元素获取值
【发布时间】:2018-01-28 21:05:13
【问题描述】:
    <a href="test.aspx?id=1">TESTDRESS</a>
    <a href="test.aspx?id=2">TESTDRESS</a>

TESTDRESS 位于页面的不同位置。

这是显示链接的。

@FindBy(how = How.CSS,using = "a[href='test.aspx']")

链接没有点击

缓存查找

@FindBy(how = How.CSS,using = "a[href='test.aspx']")
    WebElement testlink;

    public void ClickDress()
    {
        System.out.println("testlink"+testlink);
        testlink.click();

    }

调用代码:

Dashboardpage= PageFactory.initElements(driver, DashboardPage.class);
Dashboardpage.ClickDress();

错误: Marionette INFO 将不再接受新连接

【问题讨论】:

  • 错误是什么?
  • 木偶信息 新连接将不再被接受
  • 升级到最新的 firefox 和 geckodriver
  • 完成。它没有发生
  • dress 代理元素为:DefaultElementLocator 'By.cssSelector: a[href='test.aspx']'

标签: java css selenium selenium-webdriver


【解决方案1】:

正如您提到的TESTDRESS is found in various place in the page,但是在格式化HTML 时,您已经剥离了父节点id&lt;span&gt; 标记。因此,假设 href 属性对于每个节点都是唯一的,那么以下应该可以工作:

@FindBy(how = How.CSS,using = "a[href='test.aspx?id=1']")
@CacheLookup
WebElement testlink;

public void ClickDress()
{
    System.out.println("testlink"+testlink);
    testlink.click();

}

@FindBy(how = How.CSS,using = "a[href='test.aspx?id=2']")
@CacheLookup
WebElement testlink;

public void ClickDress()
{
    System.out.println("testlink"+testlink);
    testlink.click();

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-02
    • 1970-01-01
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 2017-10-03
    相关资源
    最近更新 更多