mirror of
https://github.com/ARM-software/workload-automation.git
synced 2025-02-21 20:38:57 +00:00
UiAutomatorWorkloads: Updated to use the new parameter passing functionality.
Each workload has be modfied to remove the old manual paremeter conversion and instead to retrieve the desired type from the parameter bundle directly.
This commit is contained in:
parent
d10e51e30b
commit
8f1206678a
@ -76,8 +76,8 @@ class AdobeReader(AndroidUxPerfWorkload):
|
|||||||
|
|
||||||
def validate(self):
|
def validate(self):
|
||||||
super(AdobeReader, self).validate()
|
super(AdobeReader, self).validate()
|
||||||
self.uiauto_params['filename'] = self.document_name.replace(' ', '0space0')
|
self.uiauto_params['filename'] = self.document_name
|
||||||
self.uiauto_params['search_string_list'] = '0newline0'.join([x.replace(' ', '0space0') for x in self.search_string_list])
|
self.uiauto_params['search_string_list'] = self.search_string_list
|
||||||
# Only accept certain file formats
|
# Only accept certain file formats
|
||||||
if os.path.splitext(self.document_name.lower())[1] not in ['.pdf']:
|
if os.path.splitext(self.document_name.lower())[1] not in ['.pdf']:
|
||||||
raise ValidationError('{} must be a PDF file'.format(self.document_name))
|
raise ValidationError('{} must be a PDF file'.format(self.document_name))
|
||||||
|
Binary file not shown.
@ -45,9 +45,8 @@ public class UiAutomation extends UxPerfUiAutomation implements ApplaunchInterfa
|
|||||||
public void runUiAutomation() throws Exception {
|
public void runUiAutomation() throws Exception {
|
||||||
parameters = getParams();
|
parameters = getParams();
|
||||||
|
|
||||||
String filename = parameters.getString("filename").replace("0space0", " ");
|
String filename = parameters.getString("filename");
|
||||||
String[] searchStrings =
|
String[] searchStrings = parameters.getStringArray("search_string_list");
|
||||||
parameters.getString("search_string_list").replace("0space0", " ").split("0newline0");
|
|
||||||
|
|
||||||
setScreenOrientation(ScreenOrientation.NATURAL);
|
setScreenOrientation(ScreenOrientation.NATURAL);
|
||||||
runApplicationInitialization();
|
runApplicationInitialization();
|
||||||
|
Binary file not shown.
@ -41,7 +41,7 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
Bundle status = new Bundle();
|
Bundle status = new Bundle();
|
||||||
Bundle params = getParams();
|
Bundle params = getParams();
|
||||||
String numThreads = params.getString("number_of_threads");
|
String numThreads = params.getString("number_of_threads");
|
||||||
Boolean nativeOnly = Boolean.parseBoolean(params.getString("native_only"));
|
Boolean nativeOnly = params.getBoolean("native_only");
|
||||||
status.putString("product", getUiDevice().getProductName());
|
status.putString("product", getUiDevice().getProductName());
|
||||||
|
|
||||||
waitForStartButton();
|
waitForStartButton();
|
||||||
|
Binary file not shown.
@ -45,9 +45,9 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
Bundle parameters = getParams();
|
Bundle parameters = getParams();
|
||||||
|
|
||||||
String version = parameters.getString("version");
|
String version = parameters.getString("version");
|
||||||
boolean enableSdTests = Boolean.parseBoolean(parameters.getString("enable_sd_tests"));
|
boolean enableSdTests = parameters.getBoolean("enable_sd_tests");
|
||||||
|
|
||||||
int times = Integer.parseInt(parameters.getString("times"));
|
int times = parameters.getInt("times");
|
||||||
if (times < 1) {
|
if (times < 1) {
|
||||||
times = 1;
|
times = 1;
|
||||||
}
|
}
|
||||||
|
Binary file not shown.
@ -51,7 +51,7 @@ public class UiAutomation extends UxPerfUiAutomation {
|
|||||||
/** Timeout to wait for application launch to finish. */
|
/** Timeout to wait for application launch to finish. */
|
||||||
private Integer launch_timeout = 10;
|
private Integer launch_timeout = 10;
|
||||||
public String applaunchType;
|
public String applaunchType;
|
||||||
public String applaunchIterations;
|
public int applaunchIterations;
|
||||||
public String activityName;
|
public String activityName;
|
||||||
public ApplaunchInterface launch_workload;
|
public ApplaunchInterface launch_workload;
|
||||||
|
|
||||||
@ -90,15 +90,15 @@ public class UiAutomation extends UxPerfUiAutomation {
|
|||||||
// Get parameters for application launch
|
// Get parameters for application launch
|
||||||
getPackageParameters();
|
getPackageParameters();
|
||||||
applaunchType = parameters.getString("applaunch_type");
|
applaunchType = parameters.getString("applaunch_type");
|
||||||
applaunchIterations = parameters.getString("applaunch_iterations");
|
applaunchIterations = parameters.getInt("applaunch_iterations");
|
||||||
activityName = parameters.getString("launch_activity");
|
activityName = parameters.getString("launch_activity");
|
||||||
|
|
||||||
// Run the workload for application launch initialization
|
// Run the workload for application launch initialization
|
||||||
runApplaunchSetup();
|
runApplaunchSetup();
|
||||||
|
|
||||||
// Run the workload for application launch measurement
|
// Run the workload for application launch measurement
|
||||||
for (int iteration = 0; iteration < Integer.parseInt(applaunchIterations); iteration++) {
|
for (int iteration = 0; iteration < applaunchIterations; iteration++) {
|
||||||
Log.d("Applaunch iteration number: ", applaunchIterations);
|
Log.d("Applaunch iteration number: ", String.valueOf(applaunchIterations));
|
||||||
sleep(20);//sleep for a while before next iteration
|
sleep(20);//sleep for a while before next iteration
|
||||||
killBackground();
|
killBackground();
|
||||||
runApplaunchIteration(iteration);
|
runApplaunchIteration(iteration);
|
||||||
|
Binary file not shown.
@ -43,11 +43,9 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
public void runUiAutomation() throws Exception {
|
public void runUiAutomation() throws Exception {
|
||||||
Bundle parameters = getParams();
|
Bundle parameters = getParams();
|
||||||
if (parameters.size() > 0) {
|
if (parameters.size() > 0) {
|
||||||
iterations = Integer.parseInt(parameters
|
iterations = parameters.getInt("no_of_captures");
|
||||||
.getString("no_of_captures"));
|
timeDurationBetweenEachCapture = parameters.getInt("time_between_captures");
|
||||||
timeDurationBetweenEachCapture = Integer.parseInt(parameters
|
api = parameters.getInt("api_level");
|
||||||
.getString("time_between_captures"));
|
|
||||||
api = Integer.parseInt(parameters.getString("api_level"));
|
|
||||||
String versionString = parameters.getString("version");
|
String versionString = parameters.getString("version");
|
||||||
version = splitVersion(versionString);
|
version = splitVersion(versionString);
|
||||||
}
|
}
|
||||||
|
Binary file not shown.
@ -45,10 +45,9 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
public void runUiAutomation() throws Exception {
|
public void runUiAutomation() throws Exception {
|
||||||
Bundle parameters = getParams();
|
Bundle parameters = getParams();
|
||||||
if (parameters.size() > 0) {
|
if (parameters.size() > 0) {
|
||||||
recordingTime = Integer.parseInt(parameters
|
recordingTime = parameters.getInt("recording_time");
|
||||||
.getString("recording_time"));
|
|
||||||
recordingMode = parameters.getString("recording_mode");
|
recordingMode = parameters.getString("recording_mode");
|
||||||
api = Integer.parseInt(parameters.getString("api_level"));
|
api = parameters.getInt("api_level");
|
||||||
String versionString = parameters.getString("version");
|
String versionString = parameters.getString("version");
|
||||||
version = splitVersion(versionString);
|
version = splitVersion(versionString);
|
||||||
}
|
}
|
||||||
|
Binary file not shown.
@ -43,8 +43,8 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
String version = parameters.getString("version");
|
String version = parameters.getString("version");
|
||||||
String useCase = parameters.getString("use_case").replace('_', ' ');
|
String useCase = parameters.getString("use_case").replace('_', ' ');
|
||||||
String variant = parameters.getString("variant").replace('_', ' ');
|
String variant = parameters.getString("variant").replace('_', ' ');
|
||||||
int iterations = Integer.parseInt(parameters.getString("iterations"));
|
int iterations = parameters.getInt("iterations");
|
||||||
int testTimeoutSeconds = Integer.parseInt(parameters.getString("timeout"));
|
int testTimeoutSeconds = parameters.getInt("timeout");
|
||||||
if (iterations < 1)
|
if (iterations < 1)
|
||||||
iterations = 1;
|
iterations = 1;
|
||||||
|
|
||||||
|
Binary file not shown.
@ -94,11 +94,11 @@ class Googleplaybooks(AndroidUxPerfWorkload):
|
|||||||
|
|
||||||
def validate(self):
|
def validate(self):
|
||||||
super(Googleplaybooks, self).validate()
|
super(Googleplaybooks, self).validate()
|
||||||
self.uiauto_params['search_book_title'] = self.search_book_title.replace(' ', '0space0')
|
self.uiauto_params['search_book_title'] = self.search_book_title
|
||||||
# If library_book_title is blank, set it to the same as search_book_title
|
# If library_book_title is blank, set it to the same as search_book_title
|
||||||
if not self.library_book_title: # pylint: disable=access-member-before-definition
|
if not self.library_book_title: # pylint: disable=access-member-before-definition
|
||||||
self.library_book_title = self.search_book_title # pylint: disable=attribute-defined-outside-init
|
self.library_book_title = self.search_book_title # pylint: disable=attribute-defined-outside-init
|
||||||
self.uiauto_params['library_book_title'] = self.library_book_title.replace(' ', '0space0')
|
self.uiauto_params['library_book_title'] = self.library_book_title
|
||||||
self.uiauto_params['chapter_page_number'] = self.select_chapter_page_number
|
self.uiauto_params['chapter_page_number'] = self.select_chapter_page_number
|
||||||
self.uiauto_params['search_word'] = self.search_word
|
self.uiauto_params['search_word'] = self.search_word
|
||||||
self.uiauto_params['account'] = self.account
|
self.uiauto_params['account'] = self.account
|
||||||
|
Binary file not shown.
@ -51,8 +51,8 @@ public class UiAutomation extends UxPerfUiAutomation implements ApplaunchInterfa
|
|||||||
|
|
||||||
parameters = getParams();
|
parameters = getParams();
|
||||||
|
|
||||||
String searchBookTitle = parameters.getString("search_book_title").replace("0space0", " ");
|
String searchBookTitle = parameters.getString("search_book_title");
|
||||||
String libraryBookTitle = parameters.getString("library_book_title").replace("0space0", " ");
|
String libraryBookTitle = parameters.getString("library_book_title");
|
||||||
String chapterPageNumber = parameters.getString("chapter_page_number");
|
String chapterPageNumber = parameters.getString("chapter_page_number");
|
||||||
String searchWord = parameters.getString("search_word");
|
String searchWord = parameters.getString("search_word");
|
||||||
String noteText = "This is a test note";
|
String noteText = "This is a test note";
|
||||||
|
@ -23,7 +23,7 @@ class GoogleSlides(AndroidUxPerfWorkload):
|
|||||||
|
|
||||||
name = 'googleslides'
|
name = 'googleslides'
|
||||||
package = 'com.google.android.apps.docs.editors.slides'
|
package = 'com.google.android.apps.docs.editors.slides'
|
||||||
|
|
||||||
activity = ''
|
activity = ''
|
||||||
view = [package + '/com.google.android.apps.docs.quickoffice.filepicker.FilePickerActivity',
|
view = [package + '/com.google.android.apps.docs.quickoffice.filepicker.FilePickerActivity',
|
||||||
package + '/com.google.android.apps.docs.editors.shared.filepicker.FilePickerActivity',
|
package + '/com.google.android.apps.docs.editors.shared.filepicker.FilePickerActivity',
|
||||||
@ -118,10 +118,10 @@ class GoogleSlides(AndroidUxPerfWorkload):
|
|||||||
def validate(self):
|
def validate(self):
|
||||||
super(GoogleSlides, self).validate()
|
super(GoogleSlides, self).validate()
|
||||||
self.uiauto_params['workdir_name'] = self.device.path.basename(self.device.working_directory)
|
self.uiauto_params['workdir_name'] = self.device.path.basename(self.device.working_directory)
|
||||||
self.uiauto_params['test_file'] = self.test_file.replace(' ', '0space0')
|
self.uiauto_params['test_file'] = self.test_file
|
||||||
self.uiauto_params['slide_count'] = self.slide_count
|
self.uiauto_params['slide_count'] = self.slide_count
|
||||||
self.uiauto_params['do_text_entry'] = self.do_text_entry
|
self.uiauto_params['do_text_entry'] = self.do_text_entry
|
||||||
self.uiauto_params['new_doc_name'] = self.new_doc_name.replace(' ', '0space0')
|
self.uiauto_params['new_doc_name'] = self.new_doc_name
|
||||||
# Only accept certain image formats
|
# Only accept certain image formats
|
||||||
if os.path.splitext(self.test_image.lower())[1] not in ['.jpg', '.jpeg', '.png']:
|
if os.path.splitext(self.test_image.lower())[1] not in ['.jpg', '.jpeg', '.png']:
|
||||||
raise ValidationError('{} must be a JPEG or PNG file'.format(self.test_image))
|
raise ValidationError('{} must be a JPEG or PNG file'.format(self.test_image))
|
||||||
|
Binary file not shown.
@ -51,10 +51,10 @@ public class UiAutomation extends UxPerfUiAutomation {
|
|||||||
packageName = parameters.getString("package");
|
packageName = parameters.getString("package");
|
||||||
packageID = packageName + ":id/";
|
packageID = packageName + ":id/";
|
||||||
|
|
||||||
String newDocumentName = parameters.getString("new_doc_name").replace("0space0", " ");
|
String newDocumentName = parameters.getString("new_doc_name");
|
||||||
String pushedDocumentName = parameters.getString("test_file").replace("0space0", " ");
|
String pushedDocumentName = parameters.getString("test_file");
|
||||||
int slideCount = Integer.parseInt(parameters.getString("slide_count"));
|
int slideCount = parameters.getInt("slide_count");
|
||||||
boolean doTextEntry = Boolean.parseBoolean(parameters.getString("do_text_entry"));
|
boolean doTextEntry = parameters.getBoolean("do_text_entry");
|
||||||
String workingDirectoryName = parameters.getString("workdir_name");
|
String workingDirectoryName = parameters.getString("workdir_name");
|
||||||
|
|
||||||
setScreenOrientation(ScreenOrientation.NATURAL);
|
setScreenOrientation(ScreenOrientation.NATURAL);
|
||||||
|
Binary file not shown.
@ -38,7 +38,7 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
public void runUiAutomation() throws Exception {
|
public void runUiAutomation() throws Exception {
|
||||||
Bundle status = new Bundle();
|
Bundle status = new Bundle();
|
||||||
Bundle params = getParams();
|
Bundle params = getParams();
|
||||||
boolean hasGpu = Boolean.parseBoolean(params.getString("has_gpu").toLowerCase());
|
boolean hasGpu = params.getBoolean("has_gpu");
|
||||||
|
|
||||||
clearLogcat();
|
clearLogcat();
|
||||||
handleFtuInfoDialogIfNecessary();
|
handleFtuInfoDialogIfNecessary();
|
||||||
|
@ -90,7 +90,7 @@ class Skype(AndroidUxPerfWorkload):
|
|||||||
super(Skype, self).validate()
|
super(Skype, self).validate()
|
||||||
self.uiauto_params['my_id'] = self.login_name
|
self.uiauto_params['my_id'] = self.login_name
|
||||||
self.uiauto_params['my_pwd'] = self.login_pass
|
self.uiauto_params['my_pwd'] = self.login_pass
|
||||||
self.uiauto_params['name'] = self.contact_name.replace(' ', '0space0')
|
self.uiauto_params['name'] = self.contact_name
|
||||||
self.uiauto_params['duration'] = self.duration
|
self.uiauto_params['duration'] = self.duration
|
||||||
self.uiauto_params['action'] = self.action
|
self.uiauto_params['action'] = self.action
|
||||||
|
|
||||||
|
Binary file not shown.
@ -45,8 +45,8 @@ public class UiAutomation extends UxPerfUiAutomation implements ApplaunchInterfa
|
|||||||
|
|
||||||
parameters = getParams();
|
parameters = getParams();
|
||||||
|
|
||||||
String contactName = parameters.getString("name").replace("0space0", " ");
|
String contactName = parameters.getString("name");
|
||||||
int callDuration = Integer.parseInt(parameters.getString("duration"));
|
int callDuration = parameters.getInt("duration");
|
||||||
String callType = parameters.getString("action");
|
String callType = parameters.getString("action");
|
||||||
String resultsFile = parameters.getString("results_file");
|
String resultsFile = parameters.getString("results_file");
|
||||||
|
|
||||||
|
Binary file not shown.
@ -43,10 +43,10 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
public void runUiAutomation() throws Exception {
|
public void runUiAutomation() throws Exception {
|
||||||
Bundle parameters = getParams();
|
Bundle parameters = getParams();
|
||||||
String version = parameters.getString("version");
|
String version = parameters.getString("version");
|
||||||
Boolean browser = Boolean.parseBoolean(parameters.getString("browser"));
|
Boolean browser = parameters.getBoolean("browser");
|
||||||
Boolean metal = Boolean.parseBoolean(parameters.getString("metal"));
|
Boolean metal = parameters.getBoolean("metal");
|
||||||
Boolean multicore = Boolean.parseBoolean(parameters.getString("multicore"));
|
Boolean multicore = parameters.getBoolean("multicore");
|
||||||
Integer browserToUse = Integer.parseInt(parameters.getString("browserToUse")) - 1;
|
Integer browserToUse = parameters.getInt("browserToUse") - 1;
|
||||||
|
|
||||||
dismissEULA();
|
dismissEULA();
|
||||||
|
|
||||||
|
@ -62,9 +62,9 @@ class Videostreaming(AndroidUiAutoBenchmark):
|
|||||||
self.uiauto_params['tolerance'] = self.tolerance
|
self.uiauto_params['tolerance'] = self.tolerance
|
||||||
self.uiauto_params['sampling_interval'] = self.sampling_interval
|
self.uiauto_params['sampling_interval'] = self.sampling_interval
|
||||||
if self.video_name and self.video_name != "":
|
if self.video_name and self.video_name != "":
|
||||||
self.uiauto_params['video_name'] = self.video_name.replace(" ", "0space0") # hack to get around uiautomator limitation
|
self.uiauto_params['video_name'] = self.video_name
|
||||||
else:
|
else:
|
||||||
self.uiauto_params['video_name'] = "abkk sathe {}".format(self.resolution).replace(" ", "0space0")
|
self.uiauto_params['video_name'] = "abkk sathe {}".format(self.resolution)
|
||||||
self.apk_file = context.resolver.get(wlauto.common.android.resources.ApkFile(self))
|
self.apk_file = context.resolver.get(wlauto.common.android.resources.ApkFile(self))
|
||||||
self.uiauto_file = context.resolver.get(wlauto.common.android.resources.JarFile(self))
|
self.uiauto_file = context.resolver.get(wlauto.common.android.resources.JarFile(self))
|
||||||
self.device_uiauto_file = self.device.path.join(self.device.working_directory,
|
self.device_uiauto_file = self.device.path.join(self.device.working_directory,
|
||||||
|
Binary file not shown.
@ -60,10 +60,9 @@ public class UiAutomation extends BaseUiAutomation {
|
|||||||
if (parameters.size() <= 0)
|
if (parameters.size() <= 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int tolerance = Integer.parseInt(parameters.getString("tolerance"));
|
int tolerance = parameters.getInt("tolerance");
|
||||||
int samplingInterval = Integer.parseInt(parameters
|
int samplingInterval = parameters.getInt("sampling_interval");
|
||||||
.getString("sampling_interval"));
|
String videoName = parameters.getString("video_name");
|
||||||
String videoName = parameters.getString("video_name").replace("0space0", " "); //Hack to get around uiautomator limitation
|
|
||||||
|
|
||||||
UiObject search = new UiObject(new UiSelector()
|
UiObject search = new UiObject(new UiSelector()
|
||||||
.className("android.widget.ImageButton").index(0));
|
.className("android.widget.ImageButton").index(0));
|
||||||
|
@ -86,7 +86,7 @@ class Youtube(AndroidUxPerfWorkload):
|
|||||||
def validate(self):
|
def validate(self):
|
||||||
super(Youtube, self).validate()
|
super(Youtube, self).validate()
|
||||||
self.uiauto_params['video_source'] = self.video_source
|
self.uiauto_params['video_source'] = self.video_source
|
||||||
self.uiauto_params['search_term'] = self.search_term.replace(' ', '0space0')
|
self.uiauto_params['search_term'] = self.search_term
|
||||||
# Make sure search term is set if video source is 'search'
|
# Make sure search term is set if video source is 'search'
|
||||||
if (self.video_source == 'search') and not self.search_term:
|
if (self.video_source == 'search') and not self.search_term:
|
||||||
raise WorkloadError("Param 'search_term' must be specified when video source is 'search'")
|
raise WorkloadError("Param 'search_term' must be specified when video source is 'search'")
|
||||||
|
Binary file not shown.
@ -46,9 +46,6 @@ public class UiAutomation extends UxPerfUiAutomation implements ApplaunchInterfa
|
|||||||
|
|
||||||
String videoSource = parameters.getString("video_source");
|
String videoSource = parameters.getString("video_source");
|
||||||
String searchTerm = parameters.getString("search_term");
|
String searchTerm = parameters.getString("search_term");
|
||||||
if (searchTerm != null) {
|
|
||||||
searchTerm = searchTerm.replace("0space0", " ");
|
|
||||||
}
|
|
||||||
|
|
||||||
setScreenOrientation(ScreenOrientation.NATURAL);
|
setScreenOrientation(ScreenOrientation.NATURAL);
|
||||||
runApplicationInitialization();
|
runApplicationInitialization();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user