From f2ff559805487b72cd5e815aa37a4a0e42301df7 Mon Sep 17 00:00:00 2001 From: muendelezaji Date: Thu, 12 May 2016 15:46:05 +0100 Subject: [PATCH] Update google slides workload - support for pushing local PPT files to device for testing --- wlauto/workloads/googleslides/__init__.py | 69 ++++++++++---- .../com.arm.wlauto.uiauto.googleslides.jar | Bin 10747 -> 11084 bytes .../com/arm/wlauto/uiauto/UiAutomation.java | 84 +++++++++++++----- 3 files changed, 114 insertions(+), 39 deletions(-) diff --git a/wlauto/workloads/googleslides/__init__.py b/wlauto/workloads/googleslides/__init__.py index 7c04549a..205f9e78 100644 --- a/wlauto/workloads/googleslides/__init__.py +++ b/wlauto/workloads/googleslides/__init__.py @@ -13,16 +13,17 @@ # limitations under the License. # -import os.path as op +import os +import os.path as path import re -import time - from wlauto import AndroidUiAutoBenchmark, Parameter def not_implemented(workload, text): workload.logger.info('## ++ NOT IMPLEMENTED ++ ##\n## {}\n## -- NOT IMPLEMENTED -- ##'.format(text)) +def log_method(workload, name): + workload.logger.info('===== {}() ======'.format(name)) class GoogleSlides(AndroidUiAutoBenchmark): @@ -30,10 +31,12 @@ class GoogleSlides(AndroidUiAutoBenchmark): package = 'com.google.android.apps.docs.editors.slides' description = 'Creates a Google Slides presentation with some commonly used features' activity = '' - # com.google.android.apps.docs.editors.slides/com.google.android.apps.docs.app.DocListActivity - # com.google.android.apps.docs.editors.slides/com.google.android.apps.docs.welcome.warmwelcome.TrackingWelcomeActivity - instrumentation_log = '{}_instrumentation.log'.format(name) + # Views for FPS instrumentation + view = [ + "com.google.android.apps.docs.editors.slides/com.google.android.apps.docs.app.DocListActivity", + "com.google.android.apps.docs.editors.slides/com.google.android.apps.docs.welcome.warmwelcome.TrackingWelcomeActivity", + ] parameters = [ Parameter('dumpsys_enabled', kind=bool, default=True, @@ -41,42 +44,78 @@ class GoogleSlides(AndroidUiAutoBenchmark): If ``True``, dumpsys captures will be carried out during the test run. The output is piped to log files which are then pulled from the phone. '''), + Parameter('local_files', kind=bool, default=True, + description=''' + If ``True``, the workload will push PowerPoint files to be used for testing on + the device. Otherwise, the files will be created from template inside the app. + '''), ] + instrumentation_log = '{}_instrumentation.log'.format(name) + file_prefix = 'wa_test_' + local_dir = '.' # self.dependencies_directory + device_dir = '/sdcard/Download' # self.device.working_directory + def __init__(self, device, **kwargs): super(GoogleSlides, self).__init__(device, **kwargs) - self.output_file = op.join(self.device.working_directory, self.instrumentation_log) + self.output_file = path.join(self.device.working_directory, self.instrumentation_log) self.run_timeout = 60 def validate(self): - self.logger.info('===== validate() ======') + log_method(self, 'validate') super(GoogleSlides, self).validate() self.uiauto_params['dumpsys_enabled'] = self.dumpsys_enabled self.uiauto_params['output_dir'] = self.device.working_directory self.uiauto_params['results_file'] = self.output_file + def initialize(self, context): + log_method(self, 'initialize') + super(GoogleSlides, self).initialize(context) + if self.local_files: + # push local PPT files + for entry in os.listdir(self.local_dir): + wa_file = self.file_prefix + entry + if entry.endswith(".pptx"): + self.device.push_file(path.join(self.local_dir, entry), + path.join(self.device_dir, wa_file), + timeout=60) + # Force a re-index of the mediaserver cache to pick up new files + self.device.execute('am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///sdcard') + def setup(self, context): - self.logger.info('===== setup() ======') + log_method(self, 'setup') super(GoogleSlides, self).setup(context) def run(self, context): - self.logger.info('===== run() ======') + log_method(self, 'run') super(GoogleSlides, self).run(context) def update_result(self, context): - self.logger.info('===== update_result() ======') + log_method(self, 'update_result') super(GoogleSlides, self).update_result(context) if self.dumpsys_enabled: not_implemented(self, 'get_metrics(context)') def teardown(self, context): - self.logger.info('===== teardown() ======') + log_method(self, 'teardown') super(GoogleSlides, self).teardown(context) not_implemented(self, 'pull_logs(context)') + def finalize(self, context): + log_method(self, 'finalize') + super(GoogleSlides, self).finalize(context) + if self.local_files: + # delete pushed PPT files + for entry in os.listdir(self.local_dir): + wa_file = self.file_prefix + entry + if entry.endswith(".pptx"): + self.device.delete_file(path.join(self.device_dir, wa_file)) + # Force a re-index of the mediaserver cache to pick up new files + self.device.execute('am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///sdcard') + def get_metrics(self, context): self.device.pull_file(self.output_file, context.output_directory) - metrics_file = op.join(context.output_directory, self.instrumentation_log) + metrics_file = path.join(context.output_directory, self.instrumentation_log) with open(metrics_file, 'r') as wfh: regex = re.compile(r'(\w+)\s+(\d+)\s+(\d+)\s+(\d+)') for line in wfh: @@ -90,5 +129,5 @@ class GoogleSlides(AndroidUiAutoBenchmark): wd = self.device.working_directory for entry in self.device.listdir(wd): if entry.startswith(self.name) and entry.endswith('.log'): - self.device.pull_file(op.join(wd, entry), context.output_directory) - self.device.delete_file(op.join(wd, entry)) + self.device.pull_file(path.join(wd, entry), context.output_directory) + self.device.delete_file(path.join(wd, entry)) diff --git a/wlauto/workloads/googleslides/com.arm.wlauto.uiauto.googleslides.jar b/wlauto/workloads/googleslides/com.arm.wlauto.uiauto.googleslides.jar index 3a2191510093674f3c8e1ca7ce0071bdaeebb687..456cac32ee9157b5d1db6a4faf92c31137a38a4b 100644 GIT binary patch delta 10836 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 diff --git a/wlauto/workloads/googleslides/uiauto/src/com/arm/wlauto/uiauto/UiAutomation.java b/wlauto/workloads/googleslides/uiauto/src/com/arm/wlauto/uiauto/UiAutomation.java index 1e10758c..b9d5b8b8 100644 --- a/wlauto/workloads/googleslides/uiauto/src/com/arm/wlauto/uiauto/UiAutomation.java +++ b/wlauto/workloads/googleslides/uiauto/src/com/arm/wlauto/uiauto/UiAutomation.java @@ -1,3 +1,18 @@ +/* Copyright 2014-2016 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.arm.wlauto.uiauto.googleslides; import java.io.File; @@ -22,7 +37,7 @@ import com.arm.wlauto.uiauto.UxPerfUiAutomation; public class UiAutomation extends UxPerfUiAutomation { - public static String TAG = "googleslides"; + public static final String TAG = "googleslides"; public static final String PACKAGE = "com.google.android.apps.docs.editors.slides"; public static final String PACKAGE_ID = PACKAGE + ":id/"; @@ -32,37 +47,47 @@ public class UiAutomation extends UxPerfUiAutomation { public static final String CLASS_IMAGE_BUTTON = "android.widget.ImageButton"; public static final String CLASS_TABLE_ROW = "android.widget.TableRow"; - public Bundle parameters; - private Map results = new LinkedHashMap(); - private boolean dumpsysEnabled; - private String outputDir; - public static final int DOCTYPE_TEMPLATE = 1; public static final int DOCTYPE_PPT = 2; public static final int DOCTYPE_SLIDES = 3; + private Map results = new LinkedHashMap(); + + private Bundle parameters; + private boolean dumpsysEnabled; + private String outputDir; + private String documentName; + private boolean useLocalFiles; + + private static final String[] DEFAULT_DOCS = { "wa_test_Slides_Album.pptx", "wa_test_Slides_Pitch.pptx" }; + + public void parseParams(Bundle parameters) throws Exception { + dumpsysEnabled = Boolean.parseBoolean(parameters.getString("dumpsys_enabled")); + outputDir = parameters.getString("output_dir", "/sdcard/wa-working"); + documentName = parameters.getString("local_files", DEFAULT_DOCS[0]); + useLocalFiles = true; + } + public void runUiAutomation() throws Exception { parameters = getParams(); parseParams(parameters); skipWelcomeScreen(); enablePowerpointCompat(); - if (false) { // TODO currently unused - openFromStorage(); + if (useLocalFiles) { // TODO currently unused + openFromStorage(documentName); + } else { + createNewDoc(DOCTYPE_TEMPLATE); } - createNewDoc(DOCTYPE_TEMPLATE); setWifiStatus(false); tapDisplayNormalised(0.99, 0.99); sleep(5); + getUiDevice().pressBack(); + if (false) { // TODO currently unused writeResultsToFile(results, parameters.getString("results_file")); } } - public void parseParams(Bundle parameters) throws Exception { - dumpsysEnabled = Boolean.parseBoolean(parameters.getString("dumpsys_enabled")); - outputDir = parameters.getString("output_dir", "/sdcard/wa-working"); - } - private void skipWelcomeScreen() throws Exception { UiObject skipButton = getUiObjectByText("Skip", CLASS_BUTTON); skipButton.clickAndWaitForNewWindow(); @@ -79,12 +104,18 @@ public class UiAutomation extends UxPerfUiAutomation { sleep(1); } - private void openFromStorage() throws Exception { + private void openFromStorage(String document) throws Exception { // UiObject newButton = getUiObjectByResourceId(PACKAGE_ID + "menu_open_with_picker", CLASS_TEXT_VIEW); UiObject openButton = getUiObjectByDescription("Open presentation", CLASS_TEXT_VIEW); openButton.click(); openButton = getUiObjectByText("Device storage", CLASS_TEXT_VIEW); openButton.clickAndWaitForNewWindow(); + + UiObject selectDoc = getUiObjectByText(document, CLASS_TEXT_VIEW); + selectDoc.click(); + openButton = getUiObjectByText("Open", CLASS_BUTTON); + openButton.clickAndWaitForNewWindow(); + getUiDevice().pressBack(); sleep(1); } @@ -93,28 +124,33 @@ public class UiAutomation extends UxPerfUiAutomation { // UiObject newButton = getUiObjectByResourceId(PACKAGE_ID + "fab_base_button", CLASS_IMAGE_BUTTON); UiObject newButton = getUiObjectByDescription("New presentation", CLASS_IMAGE_BUTTON); newButton.click(); + // UiObject fromTemplate = getUiObjectByDescription("Choose template", CLASS_IMAGE_BUTTON); + UiObject fromTemplate = getUiObjectByText("Choose template", CLASS_TEXT_VIEW); - UiObject newPowerpoint = getUiObjectByDescription("New PowerPoint", CLASS_IMAGE_BUTTON); - UiObject newSlidesFile = getUiObjectByDescription("New Slides", CLASS_IMAGE_BUTTON); - UiObject fromTemplate = getUiObjectByDescription("Choose template", CLASS_IMAGE_BUTTON); - // UiObject newPowerpoint = getUiObjectByText("New PowerPoint", CLASS_TEXT_VIEW); - // UiObject newSlidesFile = getUiObjectByText("New Slides", CLASS_TEXT_VIEW); - // UiObject fromTemplate = getUiObjectByText("Choose template", CLASS_TEXT_VIEW); + // UiObject newPowerpoint = getUiObjectByDescription("New PowerPoint", CLASS_IMAGE_BUTTON); + // UiObject newSlidesFile = getUiObjectByDescription("New Slides", CLASS_IMAGE_BUTTON); + UiObject newPowerpoint = getUiObjectByText("New PowerPoint", CLASS_TEXT_VIEW); + UiObject newSlidesFile = getUiObjectByText("New Slides", CLASS_TEXT_VIEW); switch (docType) { case DOCTYPE_TEMPLATE: + String[] templateNames = { "Lesson plan", "Book report", " Field trip", "Science project" }; fromTemplate.clickAndWaitForNewWindow(); + // UiObject template = getUiObjectByText(templateNames[1], CLASS_TEXT_VIEW); + UiObject template = new UiObject(new UiSelector().resourceId(PACKAGE_ID + "template_item").instance(2)); + template.clickAndWaitForNewWindow(); break; + case DOCTYPE_PPT: newPowerpoint.clickAndWaitForNewWindow(); break; + case DOCTYPE_SLIDES: default: newSlidesFile.clickAndWaitForNewWindow(); break; } sleep(1); - getUiDevice().pressBack(); } public void uiDeviceEdgeSwipeFromLeft(int steps) { @@ -144,8 +180,8 @@ public class UiAutomation extends UxPerfUiAutomation { + " sleep 1;" + " input keyevent 4;" + "fi"; - // runShellCommand(adbCommand); - runShellCommand("dumpsys wifi | grep curState=ConnectedState"); + runShellCommand(adbCommand); + // runShellCommand("dumpsys wifi | grep curState=ConnectedState"); sleep(1); }