从网页读取li元素并将其存储在OpenTest中的数组中,以检查是否有重复项

问题描述 投票:1回答:1

3 li个项目全部不同。如果所有li都相同,则表示重复,我们必须自动执行此方案

我希望代码应该能够自动执行查找重复的li项的过程

$runAction("org.getopentest.selenium.ReadElementText", {
  locator: $data("locators/Profile").ClientsCSP,
  $localData: {
    description: "$output.text"
  }
});
var str1 = $localData.abc;
$log(str1);
<div data-autoid="Clients" class="m-section ItemList__itemList___2dOxf m-body" style="" xpath="1">
  <ul>
    <li data-autoid="Clients_item_0" class="ItemList__label___1N5Nz">1-800 Contacts</li>
    <li data-autoid="Clients_item_1" class="ItemList__label___1N5Nz">10 Advertising</li>
    <li data-autoid="Clients_item_2" class="ItemList__label___1N5Nz">clients_23rd July</li>
  </ul>
</div>

li个项目存储在数组中,如果发现重复则将其记录下来

automated-tests opentest
1个回答
0
投票

最好的解决方法是使用GetElements操作。

- description: Find all li elements
  action: org.getopentest.selenium.GetElements
  args:
    locator: ... # This locator must match all li elements

- script: |
    var listItems = $output.elements;
    var itemsTextArray = listItems.map(function(li) {
          return li.getText();
        })
    // Next, check itemsTextArray for duplicate items
© www.soinside.com 2019 - 2024. All rights reserved.