90 lines
2.6 KiB
Plaintext
90 lines
2.6 KiB
Plaintext
|
|
# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
|
||
|
|
# Use of this source code is governed by a BSD-style license that can be
|
||
|
|
# found in the LICENSE file.
|
||
|
|
|
||
|
|
AUTHOR = "ChromeOS Team"
|
||
|
|
NAME = "power_LoadTest.docs_1hour"
|
||
|
|
PURPOSE = "Measure power draw when system is under load."
|
||
|
|
CRITERIA = "This test is a benchmark."
|
||
|
|
TIME = "LENGTHY"
|
||
|
|
TEST_CATEGORY = "Benchmark"
|
||
|
|
TEST_CLASS = "power"
|
||
|
|
TEST_TYPE = "client"
|
||
|
|
EXTENDED_TIMEOUT = 4500
|
||
|
|
PY_VERSION = 3
|
||
|
|
|
||
|
|
DOC = """
|
||
|
|
This test runs a load test consisting of cycling though web pages, playing
|
||
|
|
videos, etc. and measures battery power draw. The duration of this test is
|
||
|
|
determined by the seconds variable.
|
||
|
|
|
||
|
|
|
||
|
|
The following manual steps need to be performed on the device under test
|
||
|
|
before this test can be run:
|
||
|
|
- make sure that Ethernet cable is disconnected and WiFi is connected
|
||
|
|
- disconnect power cable
|
||
|
|
|
||
|
|
You are now ready to run the test.
|
||
|
|
"""
|
||
|
|
|
||
|
|
# TODO (bleung): Find a way to do automatic Facebook login for test account.
|
||
|
|
# TODO (tbroch): Find way to not replicate all these parameters that are common
|
||
|
|
# between this control file and the original
|
||
|
|
loop_time = 3600
|
||
|
|
loop_count = 1
|
||
|
|
|
||
|
|
# Task format:
|
||
|
|
# This sets the tasks variable in the extension directly via javascript.
|
||
|
|
#
|
||
|
|
# Args:
|
||
|
|
# type: [window, cycle] Window will open a window with tabs for the duration of
|
||
|
|
# the window. Cycle will cycle through the urls for the duration of the window
|
||
|
|
# every delay ms.
|
||
|
|
# name: name of the window
|
||
|
|
# start: start time (ms)
|
||
|
|
# duration: duration of task (ms)
|
||
|
|
# delay: time for each url for the cycle type (ms)
|
||
|
|
# timeout: time before loading a url times out for the cycle type (ms)
|
||
|
|
# focus: whether the window should be in the foreground
|
||
|
|
# tabs: list of urls for the window type
|
||
|
|
# urls: list of urls to cycle through for the cycle type
|
||
|
|
|
||
|
|
|
||
|
|
tasks = """
|
||
|
|
[
|
||
|
|
{
|
||
|
|
type: 'window',
|
||
|
|
name: 'background',
|
||
|
|
start: 0,
|
||
|
|
duration: minutes(60),
|
||
|
|
focus: false,
|
||
|
|
tabs: [
|
||
|
|
'https://www.google.com/search?q=google',
|
||
|
|
'https://news.google.com',
|
||
|
|
'https://www.reddit.com',
|
||
|
|
'https://www.amazon.com',
|
||
|
|
'https://www.instagram.com/instagram',
|
||
|
|
],
|
||
|
|
},
|
||
|
|
{
|
||
|
|
type: 'cycle',
|
||
|
|
name: 'docs',
|
||
|
|
start: seconds(1),
|
||
|
|
duration: minutes(60),
|
||
|
|
delay: seconds(60),
|
||
|
|
timeout: seconds(10),
|
||
|
|
focus: true,
|
||
|
|
urls: [
|
||
|
|
ViewGDoc + '1ywpQGu18T9e2lB_QVMlihDqiF0V5hsYkhlXCfu9B8jY',
|
||
|
|
ViewGDoc + '12qBD7L6n9hLW1OFgLgpurx7WSgDM3l01dU6YYU-xdXU',
|
||
|
|
],
|
||
|
|
},
|
||
|
|
]
|
||
|
|
"""
|
||
|
|
|
||
|
|
args_dict = utils.args_to_dict(args)
|
||
|
|
pdash_note = args_dict.get('pdash_note', '')
|
||
|
|
job.run_test('power_LoadTest', loop_time=loop_time, loop_count=loop_count,
|
||
|
|
test_low_batt_p=6, tasks=tasks, tag=NAME.split('.')[1],
|
||
|
|
pdash_note=pdash_note)
|