Create a checkbox plugin to easily automate gesture tests

Bug #646719 reported by Ara Pulido
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Checkbox
Invalid
Wishlist
Unassigned
Grail
Won't Fix
Wishlist
Unassigned

Bug Description

Depends on:
 * bug #731375

We can use evemu to integrate fully automated tests. Some requirements:

1. Checkbox should accept the /dev/input/eventX file as a parameter
   1a. When in record mode, Checkbox should get a dedicated X window for gesture input
   1b. It should capture all the events made and they should not be passed to the window manager
2. It should playback gestures in a Checkbox-standard way
3. The output it produces should contain as little clutter as possible and with text strings that are easy to parse

Possible example output:

Gesture: 2 Fingers Pinch
Gesture: 3 Fingers Pinch
Gesture: 1 Finger Rotate

If it is possible also to match combined gestures, that would be also great.

Example

Gesture: 2 Fingers Pinch
Combined Gesture: 3 Fingers Tap + 2 Fingers

Ara Pulido (ara)
Changed in utouch-grail:
importance: Undecided → Wishlist
summary: - Create an application to easily automated gesture tests
+ Create an application to easily automate gesture tests
Revision history for this message
Duncan McGreggor (oubiwann) wrote : Re: Create an application to easily automate gesture tests

We've been doing a portion of this manually when debugging touch issues for folks:
  https://wiki.ubuntu.com/Multitouch/Testing/uTouchEvEmu

Changed in utouch-grail:
assignee: nobody → Duncan McGreggor (oubiwann)
status: New → In Progress
Revision history for this message
Duncan McGreggor (oubiwann) wrote :

This is going to be developed in tandem with this script:
  https://bugs.launchpad.net/utouch-grail/+bug/622790

We want to make sure that Checkbox and Apport can use the libraries we create. Likely, this will go in utouch-evemu (libraries in a "python" subdir and scripts in "bin").

Links from Ara:
 * https://wiki.ubuntu.com/Testing/Automation/Checkbox/
 * https://wiki.ubuntu.com/Apport/DeveloperHowTo

Additional notes (from IRC):
<ara> in checkbox, you can have a requires field in your test, that will run only if that package is available
<ara> in apport, as the hook is only installed if a particular package is installed, you can assume that the dependencies for that package are installed as well

Changed in utouch-evemu:
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → Duncan McGreggor (oubiwann)
Revision history for this message
Brian Murray (brian-murray) wrote :

Rather than a package hook I recommend creating an apport symptom called touch. Apport would be called via 'ubuntu-bug touch' and then the symptom could help diagnose the problem, identify configuration errors, find the right package and report the bug.

Apport symptoms live in the package apport-symptoms and can be found in /usr/share/apport/symptoms. Both the storage and audio symptoms are examples of what can be accomplished with a symptom.

summary: - Create an application to easily automate gesture tests
+ Create a checkbox plugin to easily automate gesture tests
Revision history for this message
Duncan McGreggor (oubiwann) wrote :

We will need to add data to the checkbox/data directory. Something along the lines of:
  checkbox/data/evemu/devices
  checkbox/data/evemu/gestures

Device configurations and gesture recordings, respectively.

description: updated
Revision history for this message
Duncan McGreggor (oubiwann) wrote :

After further discussions with Henrik and Chase, I need to clarify the last comment:

 * the recordings are tied to a particular device
 * as such, the data directory structure would need to be something like this:

    checkbox/data/gestures/DEVICENAME/virtual-device.evemu
    checkbox/data/gestures/DEVICENAME/gesture-NAME.evemu

Revision history for this message
Chase Douglas (chasedouglas) wrote :

The hierarchy looks good. I'd use "device.prop" and "gesture-NAME.events" to distinguish between the file types.

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Since effort is already going into utouch to facilitate this, this should be Confirmed in checkbox too. It should also be wishlist, since it is a feature not a bug.

Changed in checkbox:
status: New → Confirmed
Changed in checkbox:
importance: Undecided → Wishlist
Revision history for this message
Ara Pulido (ara) wrote :

We will review this if needed

Changed in checkbox:
status: Confirmed → Invalid
Changed in utouch-evemu:
assignee: Duncan McGreggor (oubiwann) → nobody
Changed in utouch-grail:
assignee: Duncan McGreggor (oubiwann) → nobody
Revision history for this message
Chase Douglas (chasedouglas) wrote :

Only grail needs checkbox support for this task.

no longer affects: utouch-evemu
Changed in utouch-grail:
status: In Progress → Triaged
Revision history for this message
Chase Douglas (chasedouglas) wrote :

I think we are facilitating the goals of this task through integration testing. I'm closing this bug.

Changed in utouch-grail:
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.