在Uiautomator中两次点击的时差

问题描述 投票:0回答:1

我正在使用UiAutomator来测量两次点击之间的时差,但是我得到的两次点击之间的时差大于秒表手动测量的实际时差。

这是一个场景:我必须将图像保存到设备,点击Start将开始保存图像设备,直到它带有OK popup和完成的消息。所以我正在测量这个时间间隔。

这是我的源代码:

UiObject start_ok = mDevice.findObject(new UiSelector().text("OK"));
// Staring time measuring.......
   starting_time = System.currentTimeMillis();
   start_ok.click();
boolean complete_ok = mDevice.wait(Until.hasObject(By.text("OK")), 10000);
if (complete_ok)
{
  UiObject finished_ok = mDevice.findObject(new UiSelector().text("OK"));
  // Finished time calculating ....
  ending_time = System.currentTimeMillis();
  finished_ok.click();
}
 diff = ending_time - starting_time;

我正在进行的上述时间差异比我手动操作时更多。请给我一个理由。还建议我如何克服这个?如何衡量两次点击之间的准确时间?

android ui-automation
1个回答
1
投票

在指令中

boolean complete_ok = mDevice.wait(Until.hasObject(By.text("OK")), 10000);

你的Android设备将等待10秒,然后单击确定按钮。

我想改变它

UiObject finished_ok = mDevice.findObject(new UiSelector().text("OK"));
while(!finished_ok.exists()){
   finished_ok = mDevice.findObject(new UiSelector().text("OK"));
}
ending_time = System.currentTimeMillis();
  finished_ok.click();

应该有所帮助在这里,您正在等待下一个OK按钮的出现,而不是等待10秒。

© www.soinside.com 2019 - 2024. All rights reserved.