1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2024-10-06 10:51:13 +01:00
Commit Graph

334 Commits

Author SHA1 Message Date
Brendan Jackman
3904096257 framework/plugin: Whitespace 2017-12-07 15:37:49 +00:00
Brendan Jackman
6fc247a8fd framework/output: Calm pylint 2017-12-07 15:37:49 +00:00
Brendan Jackman
664f0a8905 framework/config: Whitespace 2017-12-07 15:37:49 +00:00
Brendan Jackman
81d4587da3 framework/output: Whitespace 2017-12-07 15:37:49 +00:00
Brendan Jackman
aec9a4b6fc framework/host: Add missing import 2017-12-07 15:37:49 +00:00
Brendan Jackman
6f59f8eb1b framework/agenda: Calm pylint 2017-12-07 15:37:49 +00:00
Brendan Jackman
5a373e6c7b framework/host: Calm pylint 2017-12-07 15:37:49 +00:00
Brendan Jackman
b861ca986a framework/host: Whitespace 2017-12-07 15:37:49 +00:00
Brendan Jackman
33e5eae887 framework/entrypoint: Calm pylint 2017-12-07 15:37:49 +00:00
Brendan Jackman
f935c48d47 framework/execution: Add basic docstring for Runner class 2017-12-07 15:37:49 +00:00
Brendan Jackman
e3ae7fc906 framework/entrypoint: Whitespace 2017-12-07 15:37:49 +00:00
Brendan Jackman
79ea06044b framework/execution: Calm pylint 2017-12-07 15:37:49 +00:00
Brendan Jackman
20be13282b framework/execution: Remove more unused imports
autoflake didn't find these ones, I guess because of the brackets.
2017-12-07 15:37:49 +00:00
Brendan Jackman
aae4b465bb Remove trainling newlines
Calms pylint down
2017-12-07 15:37:49 +00:00
Brendan Jackman
aa2abd16a3 Run autoflake to remove unused imports & variables 2017-12-07 15:37:49 +00:00
Marc Bonnici
b85098d5b2 framework/entrypoint: Fix help information for subcommands
Previously only the top level help message would ever be displayed,
this was caused by 'parse_known_commands' automatically displaying the
default help message and exiting before any of the custom plugins are
loaded. Now ensure this flag is never passed into the method.
2017-12-06 17:05:52 +00:00
Marc Bonnici
bfb9dd2c43 Commands/Create: Adds support for creating workloads
The create command can now be used to create workloads for the various
types.
2017-12-06 17:05:52 +00:00
Marc Bonnici
0225b76562 CreateCommand: Fix missing import 2017-12-06 17:05:52 +00:00
Sergei Trofimov
7796dabe90 framework: remove wa.framework.plugin.Artifact
Remove wa.framework.plugin.Artifact and associated references. The name
of the class clashes with the class from output and can potentially
cause confusion.

The original intention for this was to be an "expected artifact
descriptor" of sorts that plugins can specify for validation purposes,
but that functionality was never implemented. Given that the framework
has undergone significant changes since this was implemented, it's not
clear that this is the best way to go about the original goal.

Therefore remove this for now.
2017-12-06 16:25:54 +00:00
Marc Bonnici
698c61b0a5 framework/workload: Adds support for gui only workloads
Adds new workload types to allow for using a gui without requiring an
apk file.
2017-11-30 17:17:18 +00:00
Marc Bonnici
0f28a07476 framework/workload: Rename ReventWorkload to ApkReventWorkload
To reflect that the current implementation of ReventWorkload uses an APK
file on the device the name has been changed appropriately and the
relevant workloads have been updated.
2017-11-30 17:17:18 +00:00
Sergei Trofimov
0778766c8b framework/target: add adb_name alias
Add "adb_name" alias for "device" parameter of AdbConnection in order to
be backwards-compatible with WA2.
2017-11-29 13:19:39 +00:00
Sergei Trofimov
31e08bf797 framework/target: handle aliases
- Use get_config_point_map() to ensure aliases are parsed from
  configuraiton.
- Only set the default for a name only if it matches the corresponding
  param's name (i.e. don't set for alises).
2017-11-29 13:19:39 +00:00
Sergei Trofimov
a7a5d09dfa framework/config: plug_cache: handle aliases
Use get_config_point_map() when returning parameter mappings to ensure
aliases are included.
2017-11-29 13:19:39 +00:00
Sergei Trofimov
78a569a2d3 framework/config: add get_config_pont_map()
Add a function to generate a dict mapping names and aliases to
corresponding configuration point objects.
2017-11-29 13:19:39 +00:00
Marc Bonnici
07aa56f3bd GooglePhotos: Remove unnecessary method parameter 2017-11-28 08:12:31 +00:00
Marc Bonnici
b42a6a67af Gmail: Port Gmail Workload from WA2 2017-11-28 08:12:31 +00:00
Marc Bonnici
0786c25db5 GooglePlayBooks: Add support for applaunch 2017-11-28 08:12:31 +00:00
Marc Bonnici
247650141b GooglePhotos: Add support for applaunch 2017-11-28 08:12:31 +00:00
Marc Bonnici
e61ba8ed84 AdobeReader: Add support for Applaunch 2017-11-28 08:12:31 +00:00
Marc Bonnici
9f8cf2a40e Applaunch: Port workload from WA2
The report_results parameter has been removed as the parsing functionality
is now performed by the `uxperf` processor therefore to report the
results of the application launch time ensure the processor has been
enabled.
2017-11-28 08:12:31 +00:00
Marc Bonnici
6cc4021017 Framework/Uiauto: Add support for Applaunch 2017-11-28 08:12:31 +00:00
Marc Bonnici
ac5741136d Framework/Workload: Fix super propagation.
Previously super calls were not being propagated correctly so either
call the relevant super or remove the empty methods.
2017-11-28 08:12:31 +00:00
Marc Bonnici
74347b9e67 Framework/Workload: Change condition for pushing assets
Changes from checking if there are deployable assets to checking for
discovered assets. This allows for automated pushing of assets without
invoking the resource getters, for example pre discovered files.
2017-11-28 08:12:31 +00:00
Marc Bonnici
30da77a1cf Framework: Moved resource deployment to base workload 2017-11-28 08:12:31 +00:00
Marc Bonnici
bc5b43df30 Utils/Android: Fix missing space in check
Logcat entries are split on a ':' followed by a space so ensure this
is present in the line instead of just a ':'. Some devices have entires
without the trailing space causing an error.
2017-11-24 16:38:01 +00:00
Sergei Trofimov
d7da24eb52 framework/config: fix section-level workload args
create a copy of the args dict before popping args off of it to make
sure it is intact when the next job is processed.
2017-11-24 16:35:07 +00:00
Sergei Trofimov
4201193ffc processors/csv: fix artifact writing
Rename loop variable inside _write_outputs so that it doesn't clash with
the argument that gets passed (this resulted in writing to the wrong
location when writing a run artifact from a job).
2017-11-24 16:35:07 +00:00
Sergei Trofimov
76e220bb0b processors: add uxperf
Add a simplified version of the uxperf processor. This version only
extracts and calculates durations of UX_PERF sections from logcat.
Currently, this does not correlate them agains frames/fps data.
2017-11-24 14:30:09 +00:00
Sergei Trofimov
9a15b82997 framework/job: do not extract workload results on failure
Now that job output processing happens even on failure, this will result
in workload result processing also being triggered. We should not try to
extract failed workload results, so check the job status before
attempting to do so.
2017-11-24 14:30:09 +00:00
Sergei Trofimov
45d8be5228 framework/execution: ensure output is always processed
Ensure that job output is processed even if a workload fails. This is
because output processing includes things like extracting logs, which
we still want to happen on failure.

Job status is now also set correctly when an error occurs during output
processing rather than actual running of the workload. Previously, the
status would be correctly set to PARTIAL in the inner except clause,
but the exception is then re-raised, and the status was "upgraded" to
FAILED in the outer except clause.
2017-11-24 14:30:09 +00:00
Sergei Trofimov
39e63f1358 utils/android: add a parser for Logcat
Add a simple streaming parser for Logcat logs. At the moment, only the
recent logcat format is supported.
2017-11-24 14:30:09 +00:00
Sergei Trofimov
7cd2982b31 workloads/uxperf: change message format
Do not concatenate start/stop markers to the action string with a '_',
delimit them with a space instead. This will make easier to parse the
message afterwards.
2017-11-24 14:30:09 +00:00
Marc Bonnici
2611579d29 Framework/Workload: Fix typo 2017-11-23 17:49:30 +00:00
Marc Bonnici
e9ae08e00b Framework/Workload: Utilize package_names during package resolution
Iterate through available package names when resolving an apk file from
the host.
2017-11-23 17:49:30 +00:00
Marc Bonnici
ff529462e0 Framework/Workload: Require package name for package resolution
Mandate that either a package name is specified or the owner defines
supported package names. This prevents any apk file in the correct
location incorrectly being resolved.
2017-11-23 17:49:30 +00:00
Sergei Trofimov
49eb40fec7 framework/workload: add markers_enabled param for uiauto workloads
Some workloads can insert timestamped markers into the logs if this
parameter is enabled in their automation. These markers can then be
used to look at measurements for specific parts of the execution.
2017-11-22 09:22:21 +00:00
Sergei Trofimov
73a530917a framework/workload: fix asset_files and deployed_assets
These two lists are updated by workloads as assets are discovered and
deployed. As these are defined as class attributes in the base Workload
class, the same two list instances are shared between all classes. This
results in subsequent workloads re-deploying assets from the previous
workloads, and may lead to mismatches with deployable_assets, which is
overwritten on per-workload basis.

Make these into instance attriutes to prevent these issues.
2017-11-22 09:22:21 +00:00
Sergei Trofimov
652f107d10 framework/workload: fix class attribute docs
Change from free-floating strings into comments and move above the
corresponding attribute.
2017-11-22 09:22:21 +00:00
Quentin Perret
be18157223 framework/target: wait 20 sec for network to show up
Some targets need more than 5 seconds to re-connect to a wifi network
after disabling airplane mode. To fix that, poll for network up to 20
seconds and show a warning if unreachable.
2017-11-17 07:53:16 +00:00