如何通过索引选择随机元素?

时间:2019-03-22 22:06:56

标签: java android selenium automation appium

让我们说我在一个Android应用中有五个具有各自索引的元素

driver.findElement(By.xpath("//android.widget.FrameLayout[@index='0']/android.widget.ImageView[@index='0']")).click();
driver.findElement(By.xpath("//android.widget.FrameLayout[@index='1']/android.widget.ImageView[@index='0']")).click();
driver.findElement(By.xpath("//android.widget.FrameLayout[@index='2']/android.widget.ImageView[@index='0']")).click();
driver.findElement(By.xpath("//android.widget.FrameLayout[@index='3']/android.widget.ImageView[@index='0']")).click();
driver.findElement(By.xpath("//android.widget.FrameLayout[@index='4']/android.widget.ImageView[@index='0']")).click();

我只想单击五个中的一个。 我将使用什么命令使之成为可能?

2 个答案:

答案 0 :(得分:3)

生成一个介于0到4之间的随机数

Random r = new Random();
int result = r.nextInt(5);



driver.findElement(By.xpath("//android.widget.FrameLayout[@index='"+result+"']/android.widget.ImageView[@index='0']")).click();

答案 1 :(得分:0)

生成随机数

Random rand = new Random(); 

int randomNumber = random.nextInt(max - min + 1) + min;

然后将这个randomNumber分配给索引。