Javascript 量角器-在列表中存储链接&;随机点击
我试图把搜索引擎的所有100个结果链接放在一个列表中&然后使用随机数生成器随机点击任何链接 下面是我正在尝试的代码,但它不起作用:Javascript 量角器-在列表中存储链接&;随机点击,javascript,selenium-webdriver,jasmine,protractor,Javascript,Selenium Webdriver,Jasmine,Protractor,我试图把搜索引擎的所有100个结果链接放在一个列表中&然后使用随机数生成器随机点击任何链接 下面是我正在尝试的代码,但它不起作用: for (var iterate=1; iterate<100;){ var randomnumber=Math.floor(Math.random()*4); var i = randomnumber + 1; console.log("Random Number generated for iteration " + itera
for (var iterate=1; iterate<100;){
var randomnumber=Math.floor(Math.random()*4);
var i = randomnumber + 1;
console.log("Random Number generated for iteration " + iterate+ " is: "+i);
var link=element.all(by.tagName("a"));
browser.sleep(3000).then(function(){ console.log('Applied sleep for sometime');});
link.map(function(links){
return links;
}).then(function(links){
links[i].click();
})
for(var iterate=1;iterate@elRuLL在评论中几乎回答了这个问题。我想为所有未来的谷歌用户详细说明一下
element.all
不返回数组,但返回ElementArrayFinder
对象,量角器API提供了处理ElementArrayFinder的特殊函数
-
element.all(locator.get(index)
-在
ElementArrayFinder(按索引)
,等等…您必须使用这些特殊方法与element.all()返回进行交互。您使用element.all.[index]
var link
应该是var link=element.all(按.tagName(“a”))
已经尝试过@eLRuLL,但没有结果,按照原始脚本编辑了大括号。另外,不要使用map
而使用link.get(i)。单击();
ok,这对@eLRuLL有效。但是你想知道为什么map函数在这种情况下失败了吗?这里有什么想法吗?