Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Timeline and ScreenshotAnnotator #57

Draft
wants to merge 115 commits into
base: main
Choose a base branch
from
Draft

Conversation

danielmolnar
Copy link
Collaborator

@danielmolnar danielmolnar commented May 22, 2024

New Feature: Timeline and ScreenshotAnnotator

1.) Timeline

Adds the ability to start a Timeline during the test, which can record and print user actions (e.g. tap) as they happen or onError. After the test is finished a HTML overview is generated (for onError and live timeline)

  • Included in this PR: act.tap
  • More actions will be made recordable with follow up PRs.

Terminal view
Bildschirmfoto 2024-05-29 um 02 57 03

HTML view

Bildschirmaufnahme.2024-06-18.um.04.13.53.mov

2.) abstract class ScreenshotAnnotator

While aTimeline is being recorded, annotates screenshots to provide visual information about the location in which a user action took place.

  • In this PR: CrosshairAnnotator for act.tap.
Bildschirmfoto 2024-05-22 um 02 35 57 Bildschirmfoto 2024-05-28 um 11 21 39

Steps:

  • Refactor `takeScreenshot``
  • Add ScreenshotAnnotator interface
  • Add CrosshairAnnotator for act.tap
  • Add tests to screenshot_test.dart
  • Introduce Timeline
  • Create annotated screenshot when act.tap is called during recording
  • Create annotated screenshot when act.dragUntilVisible is called during recording
  • Add tests for localTimeline
  • Add tests for globalTimeline

@danielmolnar danielmolnar requested a review from passsy May 22, 2024 00:36
passsy and others added 30 commits June 24, 2024 14:52
# Conflicts:
#	lib/src/act/act.dart
#	test/act/act_drag_test.dart
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants