我正在使用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;
我正在进行的上述时间差异比我手动操作时更多。请给我一个理由。还建议我如何克服这个?如何衡量两次点击之间的准确时间?
在指令中
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秒。