getElement by id并循环遍历nightwatch中的所有元素

时间:2015-09-11 06:13:26

标签: selenium nightwatch.js

<div id="productcontainer" class="products-list" style="display: block;">
<a id="prd_Item_0" class="item-list-300x250">links</a>
<a id="prd_Item_1" class="item-list-300x250">links</a>
<a id="prd_Item_1" class="item-list-300x250">links</a>
<a id="prd_Item_1" class="item-list-300x250">links</a></div>

var ele=document.getElementById("productcontainer");
if(ele)
  {
    tags=ele.getElementsByTagName("a");
    for(i=0;i<tags.length;i++)
     {
      if(tags[i])
        {
         tags[i].click();
        }
     }
}

我想在夜间守卫js上面做,像任何人都可以帮助我如何使用nightwtch js上面这样做。

提前致谢

1 个答案:

答案 0 :(得分:1)

这应该可以胜任......

module.exports = {
  'Iterate over elements and click them': function(browser) {

    function iterate(elements) {
      elements.value.forEach(function(el) {
        browser.click(el.ELEMENT, function(r) {
          browser.assert.ok(r.status === 0);
        });
      });
    }

    browser
      .url('..')
      .elements('css selector', 'div#productcontainer a', iterate)
      .end();
  }
};