You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
2.6 KiB
53 lines
2.6 KiB
Overview:
|
|
|
|
The labpretest.sh script is designed to emulate a typical automated test lab
|
|
session. It puts a device into bootloader mode, reboots into bootloader mode,
|
|
determines device type, erases user cache, flashes a generic userdata image,
|
|
updates the bootloader image, updates the radio image, updates the system image
|
|
and reboots, sets up for a monkey run and finally runs a random monkey test.
|
|
It will repeat this based on an optional parameter(-i) or default to 100 times.
|
|
It will detect if it is in a low battery situation and wait for it to charge
|
|
again.
|
|
|
|
The goal is to see if a device is ready for deployment to automated lab testing
|
|
and can also be used to verify that lab infrastructure is ready for devices.
|
|
The idea is to run this script at the same time for multiple devices, typically
|
|
I would connect 8 devices to a host and run this script in 8 separate shell
|
|
sessions and watch for failures.
|
|
|
|
Running the script:
|
|
|
|
If there is only one device attached to the host you can simply just run the
|
|
script, it will detect the device and go through 100 cycles, running the monkey
|
|
for 200 events each cycle. The script ignores normal monkey failures. If you
|
|
have multiple devices attached use the -d <device_id> parameter to target a
|
|
specific devices. Additional parameters are -i for how many cycles and -m for
|
|
how many monkey events and finally -x to make it skip the monkey run portion
|
|
altogether.
|
|
|
|
Adding support for new devices or from scratch:
|
|
|
|
The script uses included copies of adb and fastboot which are in in the tools/
|
|
sub directory. If you are setting this up with only the script, create a tools
|
|
sub directory and put adb and fastboot in it and make sure they are executable.
|
|
Currently we use userdebug builds.
|
|
|
|
Here are the steps to add a new device:
|
|
|
|
1) Create a new sub directory using the result of "fastboot getvar product".
|
|
2) Copy a build image to the new sub directory in our format.
|
|
(i.e. passion-img-24827.zip)
|
|
3) Copy a boot image to the new sub directory in our format.
|
|
(i.e. hboot.0.33.2012.img)
|
|
4) Copy a radio image to the new sub directory in our format.
|
|
(i.e. radio.4.04.00.03_2.img)
|
|
5) Copy a userdata.img file, possibly from one of the other directories.
|
|
|
|
Customizations to the flashing process are handled by adding a custom_flash.sh
|
|
file that is read in before the main loop starts. It allows you to add any non
|
|
generic functions or details to the flashing process. You must use it to define
|
|
the variable "bootpart" which is not defined by default. Also, use this file to
|
|
rewrite the flash_device function and any others, etc...
|
|
|
|
The script should handle the rest, unless there are radical changes to file
|
|
names or the process. |