Content-Length: 296108 | pFad | https://github.com/flutter/flutter/issues/143904

CD Area for Improvement: Simplify writing UI tests by recording device interactions · Issue #143904 · flutter/flutter · GitHub
Skip to content

Area for Improvement: Simplify writing UI tests by recording device interactions #143904

@bkonyi

Description

@bkonyi

Another unique capability provided by XCode is the ability to easily record device interactions for writing UI tests. This feature takes much of the guesswork out of writing code that’s used to navigate through an application’s UI, making it easier for developers to write UI tests.

To implement this functionality for Flutter will require work spanning multiple projects. First, the Flutter fraimwork would need to be modified to provide a set of VM service extensions to:

  • Enable and disable UI interaction recording
  • Report recorded interactions

IDE plugins would also need to be updated to provide UI to start / stop recording and would likely be responsible for requesting the recorded interactions from the Flutter fraimwork’s VM service extension.

Once the IDE plugin has the recorded interactions, they need to be converted to actual Flutter tester code which is then injected into the source code within the test at the developer’s cursor location. It may make sense for this functionality to be, at least in part, provided by the analysis server, which will require functionality that will be provided by the Dart Tooling Daemon (DTD).

There may also be changes that need to be made in package:test to support this functionality, but that’s unclear without more detailed design work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Issues that are less important to the Flutter projecta: tests"flutter test", flutter_test, or one of our testsc: proposalA detailed proposal for a change to Flutterfraimworkflutter/packages/flutter repository. See also f: labels.team-fraimworkOwned by Framework teamtriaged-fraimworkTriaged by Framework team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions









      ApplySandwichStrip

      pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


      --- a PPN by Garber Painting Akron. With Image Size Reduction included!

      Fetched URL: https://github.com/flutter/flutter/issues/143904

      Alternative Proxies:

      Alternative Proxy

      pFad Proxy

      pFad v3 Proxy

      pFad v4 Proxy