如何在我的侧边菜单中单击元素

时间:2018-07-23 15:31:06

标签: javascript typescript selenium-webdriver jasmine protractor

我尝试单击侧面菜单上的元素,单击后,系统将打开一个新窗口,就像一个框架。 但是,使用Xpath,量角器单击了该元素(我可以看到它,因为当鼠标悬停时该元素会变为黄色),但是windown不会打开。 我认为量角器在错误的位置单击。

如何解决?

HTML:

<ul style="margin:10px 0 0 0; padding: 0">
            <li class="menu-content-item ng-star-inserted" title="Principal">
                <a class="ng-star-inserted">
                    <i class="" data-first="P"></i>
                    <span class="sidebar-title-menu"> Principal </span>
                    <i class="zmdi zmdi-chevron-right"></i>
                </a>
            </li>
        </ul>

我已经尝试过:

browser.driver.manage().window().maximize();

const menuPrincipal = element(by.css('div[title=Principal]'));

我正在使用量角器助手,所以我的代码如下:

   async entraNoMeucomOLink() {
        try {
            const menuPrincipal = element(by.xpath('/html/body/application/pjmt-layout/div[1]/pjmt-bar/div/pjmt-menu-vertical/div[1]/div/ul/li/a/');
            protractorHelper.waitForElementVisibility(menuPrincipal, 'MENU PRINCIPAL NAO ESTA VISIVEL', 5000);
            browser.actions().mouseMove(elemento).click().perform();(menuPrincipal)
        }

元素是这样的:

side menu

1 个答案:

答案 0 :(得分:0)

不清楚您想要什么。我更改您的代码。试试这个,请提供反馈)

  async entraNoMeucomOLink() {
     const menuPrincipal = $('.sidebar-title-menu');
     protractorHelper.waitForElementVisibility(menuPrincipal, 'MENU PRINCIPAL NAO ESTA VISIVEL', 5000);
     await menuPrincipal.click();
  }