0

我是硒的新手。我正在尝试测试此功能以单击网页中的随机链接。我将其添加为 js 用户扩展。

Selenium.prototype.doClickRanLink = function() {


var links = document.getElementsByTagName("a");
var randNum = Math.random(0,4);
links[randNum].click();


};

加载正常,并且 ClickRanLink 显示在命令框中,但是当我运行它时,会出现以下错误,我不确定为什么定义了“链接”。

[error] Unexpected Exception: TypeError: links is undefined. 

错误所在行的 # 对应 links[randNum].click();

任何想法为什么它确实显示该错误以及如何解决它?

感谢 pdta:使用 Selenium IDE 2.4.0 + firefox

4

1 回答 1

0

Math.random不接受任何参数,因此您randNum 是 0 到 1 之间的一些十进制数

所以这条线

links[randNum].click();

基本上就像

links[0.815484994].click();

并且由于没有索引 0.815484994 你会得到一个未定义的错误。

要使用最小最大值获取随机数,请使用以下命令:

function rand(min, max) {
  return Math.round( Math.random() * (max - min) + min );
}

并使用

var randIndex = rand(0,links.length-1);
links[randIndex].click();
于 2013-10-05T07:47:28.837 回答