1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2024-10-06 10:51:13 +01:00
workload-automation/wa/commands/templates/uiauto_workload
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

59 lines
2.2 KiB
Plaintext

from wa import Parameter, UiautoWorkload
class ${class_name}(UiautoWorkload):
name = '${name}'
description = "This is an placeholder description"
# Replace with a list of supported package names from the APK file(s)
package_names = ['package_name']
parameters = [
# Workload parameters go here e.g.
Parameter('example_parameter', kind=int, allowed_values=[1,2,3],
default=1, override=True, mandatory=False,
description='This is an example parameter')
]
def __init__(self, target, **kwargs):
super(${class_name}, self).__init__(target, **kwargs)
# Define any additional attiributes required for the workload
def init_resources(self, context):
super(${class_name}, self).init_resources(context)
# This method may be used to perform early resource discovery and
# initialization. This is invoked during the initial loading stage and
# before the device is ready, so cannot be used for any device-dependent
# initialization. This method is invoked before the workload instance is
# validated.
def initialize(self, context):
super(${class_name}, self).initialize(context)
# This method should be used to perform once-per-run initialization of a
# workload instance.
def validate(self):
super(${class_name}, self).validate(context)
# Validate inter-parameter assumptions etc
def setup(self, context):
super(${class_name}, self).setup(context)
# Perform any necessary setup before starting the UI automation
def run(self, context):
super(${class_name}, self).run(context)
# Perform the main functionality of the workload
def extract_results(self, context):
super(${class_name}, self).extract_results(context)
# Extract results on the target
def update_output(self, context):
super(${class_name}, self).update_output(context)
# Update the output within the specified execution context with the
# metrics and artifacts form this workload iteration.
def teardown(self, context):
super(${class_name}, self).teardown(context)
# Perform any final clean up for the Workload.