An issue that currently happens in Exactness is that we don't have any
way to debug the recordings.
Only debug information can help us to figure out what data is stored
inside the rec files.
Three commands are available:
- Clean: remove bad timestamp events and duplicate events
- Add a delay: because of the first event is directly treated if no
first timestamp is present, we need a way to fix recordings by adding
them a delay before the first event.
- List information: display the list of events, as vieet doesn't work at
all. Really helpful to figure out bugs.
An issue due to timing happens when applying scenarios on applications.
The first event is directly treated, even if the recorder waited a few
seconds without any action.
The reason is that Exactness saves in the .rec file a timestamp that is
the uptime value, i.e an absolute value. A better choice would have been
to save the number of ms relative to the launch of the application.
Because of this, Exactness doesnt have any way to know when the first
event has to be treated and consumes it whenever possible, i.e at the
beginning.
This patch adds to the recording file a timestamp reference, corresponding
to the uptime at ecore_init. When applying the scenario, this timestamp
is checked and gives an idea of a delay to wait before consuming the first
event.
A lot of events caught by Exactness preload are repeated with the same
information, such as mouse move on the same coordinates and with the
same timestamp. This adds a lot of noise into the recording file.
This patch checks if the current caught event is the same as the last
stored and skips it if they are the same.
This is useful when looking at recorded scenarios to understand what is
done.
Sometimes, when scenarios are too old, click is not done on the right
area, leading to weird behavior.
During ecore_shutdown, when the refcount reached 0, the scenario record
has to be done. The problem is that the ecore termination never happens
because of ecore modules loaded during init that references ecore
refcount.
The solution, until this is fixed, is to trigger the scenario recording
from a key press.
Summary:
Currently genlist_group is also running in play step even if it is
commented in tests.txt. Fixed this issue
Signed-off-by: kabeer khan <kabeer.khan@samsung.com>
Reviewers: cedric, stefan_schmidt, tasn
Subscribers: stefan_schmidt
Differential Revision: https://phab.enlightenment.org/D2604
Because tsuite_shot_do creates Evas and we cant use evas_new
without doing ugly hacks.
Signed-off-by: Aharon Hillel <a.hillel@partner.samsung.com>
SVN revision: 67923
(Commit message by TAsn):
Exactness is a pixel perfect test suite for elm/evas/edje.
Exactness lets you write tests, and then record a specific interaction
with them, while taking windowshots in the process. The tests can later
be played back (windowshots will be automatically taken) and the
pictures will be compared for differences (usage of fail_if is also
supported).
There is a premade set of tests and recordings for all (most?) of the
elementary widgets in various scenarios.
Because of the nature of this test suite, it doesn't handle well any
tests with continued running animations/viedos (timing can never be 100%
right). But you can use it to test widgets with transition
animations. Bottom line: just give it a go.
Read the README for more inforamtion.
I hope it'll be deployed on our servers soon, as we really need
automatic testing.
Signed-off-by: Aharon Hillel <a.hillel@partner.samsung.com>
SVN revision: 65961