我正在使用此方法从表中随机选取一个单元格:
Math.floor(Math.random() * example.length)
它没有问题。
但是我需要记住我的选择,所以我可以在我的项目中再次选择那个单元格。
有没有办法做这件事?
编辑: 我在测试脚本中使用此方法:
lvwPrivilegestable().click(
atCell(atRow((int)Math.floor(Math.random() * orderTable.getRowCount())),
atColumn((int)Math.floor(Math.random() * orderTable.getColumnCount()))));
所以当我回放测试时,我可以点击表格中的单元格。我想稍后点击相同的单元格。
答案:
似乎camus是对的。将结果传递给变量然后再读取它解决了我的问题。我认为这会有点复杂。
编辑:
现在,有没有一种方法可以随机选择不同的细胞? 因为使用我的方法,有时候有机会选择相同的细胞。
答案 0 :(得分:0)
您可以构建一个可以记住随机数的小实用程序对象:
function replayRandom() {
var results = [];
var replay = false;
return {
replay: function() {
replay = true;
},
next: function() {
if (!replay) {
val = Math.random();
results.push(val);
return val;
}
val = results[0];
results.shift();
return val;
}
};
}
示例:
r = replayRandom();
r.next();
0.7939797908670404
>>> r.next();
0.6103413074215163
>>> r.replay();
>>> r.next();
0.7939797908670404
>>> r.next();
0.6103413074215163