量角器 - 识别Ui-Sref链接

时间:2014-10-15 17:49:33

标签: javascript html node.js selenium protractor

我正在尝试通过以下方式识别以下html上的链接。我使用npm安装了linkUiSref。但我仍然得到对象没有方法linkUisref。请指教。

元素(by.linkUiSref(element(by.css('#monitoring-tab> ul> li:nth-​​child(2)> a'))))

    <nav id="monitoring-tab" class="pure-menu pure-menu-open pure-menu-horizontal ng-scope">
  <ul>
    <li ui-sref-active="pure-menu-selected" ng-hide="hideTab.now" class="pure-menu-selected">
      <a ui-sref="app.monitoring.real-time" href="#/monitoring/real-time">
        Now
      </a>
    </li>
    <li ui-sref-active="pure-menu-selected" class="">
      <a ui-sref="app.monitoring.historical.day" href="#/monitoring/historical/day">
      Day</a>
    </li>
    <li ui-sref-active="pure-menu-selected" class="">
      <a ui-sref="app.monitoring.historical.month" href="#/monitoring/historical/month">
      Month</a>
    </li>
    <li ui-sref-active="pure-menu-selected" class="">
      <a ui-sref="app.monitoring.historical.year" href="#/monitoring/historical/year">
      Year</a>
    </li>
    <li ui-sref-active="pure-menu-selected" class="">
      <a ui-sref="app.monitoring.historical.lifetime" href="#/monitoring/historical/lifetime">
      Lifetime</a>
    </li>
  </ul>
</nav>

1 个答案:

答案 0 :(得分:1)

用法:

by.linkUiSref(toState, [parentElement]).
  

toState是表示ui-router状态的String。

您传递的是ElementFinder而不是String ...所以:

$('#monitoring-tab').element(by.linkUiSref('app.monitoring.historical.month'));

也可以这样做:

$('#monitoring-tab').element(by.linkText('Month'));