首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >VmService时间戳与颤动驱动器时间线事件时间戳不对应

VmService时间戳与颤动驱动器时间线事件时间戳不对应
EN

Stack Overflow用户
提问于 2020-07-28 17:29:45
回答 1查看 39关注 0票数 0

我在哪里做了飞镖测试

代码语言:javascript
运行
复制
setUp() async {
  vm_service.VmService vms = await vmServiceConnectUri(vmUrl);
  vmsStartTime = (await vms.getVMTimelineMicros()).timestamp;
  await flutterDriver.startTracing()
}
tearDown() async {
  vmsEndTime = (await vms.getVMTimelineMicros()).timestamp;
  Timeline timeline = await driver.stopTracingAndDownloadTimeline();
}

每个测试大约运行30秒。出于某种原因,在测试之后,我有一些类似的东西

代码语言:javascript
运行
复制
vmsStartTime = 4323069605
vmsEndTime =   4323088753

在时间线中,第一个事件timestampMicros是

代码语言:javascript
运行
复制
"ts":                      4318344424

另外:

代码语言:javascript
运行
复制
"timeOriginMicros": 4318344424,
"timeExtentMicros": 2080190

我使用vmsStartTest和vmsEndTest来过滤与每个测试相关的事件,对于这样的问题,我错过了时间线中与测试相关的所有事件。请帮助我理解为什么会发生这种情况,以及如何处理它?

EN

回答 1

Stack Overflow用户

发布于 2020-07-28 20:59:56

就目前而言,使用traceAction似乎给出了最好的结果。所以我在测试期间做的每一个动作都是traceAction的一个主题。来自每个下一个traceAction的时间线被附加到全局时间线json对象(事件被附加并且持续时间被计算为customTimelineJson["timeExtentMicros"] = timeline.json["timeOriginMicros"] + timeline.json["timeExtentMicros"] - customTimelineJson["timeOriginMicros"];,这有助于将大多数事件保留在时间线中。测试开始时间映射到时间线中第一个事件中的第一个事件的timestampMicros。测试结束是从最后一个traceAction的最后一个时间线中的最后一个事件开始的。timeOriginMicros取自第一个traceAction时间线的第一个事件

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63131074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档