【问题标题】:Protractor Unable to access a specific element that has its class shared other elements量角器无法访问其类共享其他元素的特定元素
【发布时间】:2017-06-28 08:17:23
【问题描述】:

我正在尝试访问特定元素,但该元素名称在同一页面中的其他元素中使用

这是html

<div class="details of buyer">
  <div class="field">
  <small>Balance</small>
  <div>5000</div>
  </div>
  <div class="field">
  <small>Lodgements</small>
  <div>108,000.00</div>
  </div>
  <div class="field">
  <small>Max Withdrawal</small>
  <div>107,561.00</div>
  </div>
  <div class="field">
  <small>Credits</small>
  <div>-</div>
  </div>
  <div class="field">
  <small>Interest Rate</small>
  <div>-</div>
  </div>
  <div class="field">
  <small>Net Gain</small>
  <div>-</div>
  </div>
  <div class="field">
  <small>Net Yield</small>
  <div>-</div>
  </div>
 </div>
我正在尝试从以下内容中检索“107,561.00” <small>Max Withdrawal</small> <div>107,561.00</div>

我已经在我的页面对象文件中尝试过这个,但它返回“索引超出范围”...... var checkBalance= element.all(by.css('div.field&gt; small&gt; div')).get(2);

感谢您的帮助

【问题讨论】:

    标签: javascript node.js protractor aurelia e2e-testing


    【解决方案1】:

    你应该得到它:

    $$('div.field div').get(2);
    

    【讨论】:

      【解决方案2】:

      我为我的 Protractor 代码使用自定义选择器,它更具可持续性:

        <div class="field">
          <small data-custom-selector="max-withdrawal-text">Max Withdrawal</small>
          <div data-custom-selector="max-widthdrawal-amount">107,561.00</div>
        </div>
      
        var checkBalance = element(by.css('[data-custom-selector="max-widthdrawal-amount"]'));
      

      您可以将 data-custom-selector 命名为您想要的任何名称,只要您保留 data- 部分,其他示例:data-test-select , 数据测试-ptr

      【讨论】:

        猜你喜欢
        • 2022-01-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-02
        • 1970-01-01
        • 2012-04-25
        相关资源
        最近更新 更多