Skip to content

Add a new LiveTestWidgetsFlutterBindingFramePolicy for benchmark on device #60739

@CareF

Description

@CareF

There's a discussion about LiveTestWidgetsFlutterBindingFramePolicy in my recent PR, where I believe we are clarifying some ambiguity about the documents for LiveTestWidgetsFlutterBindingFramePolicy.

There are two places explaining this enum

And it seems that fullyLive can or is intended to be used for effectively a synchronized (self-pumping) tester as requested in DesignDoc:synchronized-widgettester . The only thing is that it's still responding to pumps from both user calls of a test app or from some test gestures, which leads to extra frame requests besides those from engine and framework animation. This prevents a faithful simulation for performance test cases running on a device.

If I interpret the enum flags correctly, I think it would be necessary to introduce another flag that is between fullyLive and benchmark, say benchmarkLive, that ignores all pumps like benchmark but still responds to other framework frame request like animations, while still serves all engine frame requests like fullyLive. This would be helpful for test apps running on a device to simulate the device behavior.

Metadata

Metadata

Assignees

Labels

a: tests"flutter test", flutter_test, or one of our testsengineflutter/engine related. See also e: labels.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions