如何在侧栏中获取菜单的xpath

时间:2017-11-10 09:31:05

标签: xpath

我必须点击侧栏菜单中的Manage Orders选项。我尝试使用firepath中的xpath,但它无法正常工作。以下是代码:

<div id="sidebar" class="navbar-collapse collapse">
    <ul class="nav nav-list" style="height: auto;">
        <!-- BEGIN Search Form -->
        <li>
            <!-- END Search Form -->
            <li class="active" data-slug="dashboard">
                <li data-slug="order">
                    <a class="dropdown-toggle" href="#">
                        <i class="fa fa-shopping-cart"/>
                        <span>Manage Orders</span>
                        <b class="arrow fa fa-angle-down"/>
                    </a>
                    <ul class="submenu" style="display: block;">
                        <li data-slug="promocode">
                            <a class="dropdown-toggle" href="https://bq.training/cp/promocode">
                                <span>Promo Code</span>
                            </a>
                        </li>
                        <li data-slug="transaction">
                            <a class="dropdown-toggle" href="https://bq.training/cp/order/list-order">
                                <span>Order Summary</span>
                            </a>
                        </li>
                    </ul>
                </li>

1 个答案:

答案 0 :(得分:0)

尝试Xpath =

//*[contains(text(), 'Manage Orders')]

使用这样的函数,写的是c#,只需稍加修改。

public IWebElement WaitElement(IWebDriver driver, String element)
     {
      IWebElement WebElement;
      WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(5)); //can be changed
      return WebElement = wait.Until(ExpectedConditions.ElementIsVisible(By.XPath(element)));
     }

称之为

WaitElement(driver, elementXpath).click();