Ext.: http://blog.csdn.net/huangbiao86/article/details/8490743
Shell, Monkey, System, Android, File system Monkey, example, introduction
First, Monkey test introduction
Monkey testing is an automated test of the Android platform, through the monkey program to simulate the user touch screen, sliding trackball, keys and other operations to the device's program on the pressure
Force test, the duration of the procedure will be abnormal.
Ii. Introduction of Monkey procedure
1) Monkey program is brought by Android system, written in the Java language, the storage path in the Android file system is:/system/framework/monkey.jar;
2) Monkey.jar Program is a shell script named "Monkey" to start execution, shell script in the Android file system storage path is:/system/bin/monkey;
This allows the monkey to be tested by executing in the cmd window: adb shell Monkey {+ command arguments}.
Iii. simple Help for the monkey command
To get the simple help that comes with the Monkey command, execute the command in CMD:
ADB Shell Monkey–help
Iv. introduction of Monkey command parameters
1) Parameter:-P
The parameter-P is used for constraint restrictions, and this parameter specifies one or more packages (the package, or app). Specified
After the package, Monkey will only allow the system to launch the specified app. If you do not specify a package, Monkey will allow the system to boot all apps in the device.
* Specify a package: adb shell monkey-p com.htc.Weather 100
Description: Com.htc.Weather is the package name, 100 is the event count (i.e. let the monkey program simulate 100 random user events).
* Specify multiple packages: adb shell monkey-p com.htc.weather–p com.htc.pdfreader-p com.htc.photo.widgets 100
* Do not specify package: adb shell Monkey 100
Description: Monkey randomly launches the app and sends 100 random events.
* To view all the packages in the device, execute the following command in the cmd window:
>ADB Shell
#cddata/data
#ls
2) Parameter:-V
Used to specify the level of feedback information (the level of information is the verbosity of the log), with a total of 3 levels, respectively, with the corresponding parameters as shown in the following table:
Log Level Level0
Sample adb shellmonkey-p com.htc.weather–v 100
Describe default values, providing only small amounts of information such as startup hints, test completion, and final results
Log levels Level 1
Sample adb shellmonkey-p com.htc.weather–v-v 100
Description provides a more detailed log, including each event message sent to the activity
Log Levels Level 2
Sample adb shellmonkey-p com.htc.weather–v-v–v 100
Description of the most detailed log, including the selected/unchecked activity information in the test
3) Parameter:-S
Used to specify the seed value of the pseudo-random number generator, and if the seed is the same, the sequence of events produced by the two monkey tests is the same.
Example
Monkey test 1:adb Shell monkey-p com.htc.weather–s 10 100
Monkey test 2:adb Shell monkey-p com.htc.weather–s 10 100
The effect of the two Tests is the same, because the simulated sequence of user actions (a sequence of operations consisting of each operation in a certain order) is the same. Operation sequence
Columns are randomly generated, but as long as we specify the same seed value, we can guarantee that the random sequence of operations generated by the two Tests is exactly the same, so this sequence of operations is pseudo-
the machine;
4) Parameters:--throttle < ms >
Used to specify the delay between user actions (that is, events), in milliseconds;
* Example: adb shell monkey-p com.htc.weather–throttle 3000 100
5) Parameter:--ignore-crashes
Lets you specify whether monkey stops running when the application crashes (force& close error). If you use this parameter, even if the application crashes, monkey will still send the event, straight
To the event count is complete.
* Example 1:adb shellmonkey-p com.htc.Weather--ignore-crashes 1000
Even if the weather program crashes during the test, Monkey continues to send events until the number of events reaches 1000;
* Example 2:ADB shellmonkey-p com.htc.Weather 1000
During the test, if the weather program crashes, Monkey will stop running.
6) Parameter:--ignore-timeouts
Used to specify whether monkey stops running when an application has a ANR (application No responding) error. If you use this parameter, even if the application has a ANR error,
Monkey still sends events until the event count is complete.
7) Parameter:--ignore-security-exceptions
Used to specify whether monkey stops running when an application has a licensing error (such as certificate licensing, network licensing, and so on). If you use this parameter, even if the application has a licensing error,
Monkey still sends events until the event count is complete.
8) Parameter:--kill-process-after-error
Lets you specify whether to stop the application from running when an error occurs. If this parameter is specified, the application stops running and remains in the current state when an application error occurs (Note:
The application is static only when the error occurs, and the system does not end the process of the application.
9) Parameter:--monitor-native-crashes
Used to specify whether to monitor and report local code for application crashes.
10) Parameters:--pct-{+ Event category}{+ event category%}
Used to specify the percentage of events per category (in the Monkey event sequence, the number of such events as a percentage of the total number of events)
Parameters:
Instructions for use:
Example:
--pct-touch {+ percent}
Adjust the percentage of touch events (Touch event is a down-up event that occurs in a single location on the screen)
ADB shell Monkey-p Com.htc.weather--pct-touch 10 1000
--pct-motion {+ percent}
Adjust the percentage of action events (an action event consists of a down event, a series of pseudo-random events, and an up event somewhere on the screen) adb shell monkey-p
Com.htc.Weather--pct-motion 20 1000
--pct-trackball {+ percent}
Adjusts the percentage of track events (track events consist of one or several random movements, sometimes accompanied by clicks)
ADB shell Monkey-p com.htc.weather--pct-trackball 30 1000
--pct-nav {+ percent}
Adjust the percentage of basic navigation events (navigation events consist of up/down/left/right from the direction input device)
ADB shell Monkey-p Com.htc.weather--pct-nav 40 1000
--pct-majornav {+ percent}
Adjust the percentage of primary navigation events (these navigation events usually trigger actions in the graphical interface, such as: 5-way keyboard, Fallback button, menu button)
ADB shell Monkey-p Com.htc.weather--pct-majornav 50 1000
--pct-syskeys {+ percent}
Adjust the percentage of the System key event (these keys are usually reserved for use by the system, such as home, back, Start call, End call, and volume control keys)
ADB shell Monkey-p com.htc.weather--pct-syskeys 60 1000
--pct-appswitch {+ percent}
Adjusts the percentage of startup activity. In a random interval, monkey will execute a startactivity () call as a way to maximally cover all activity in the package
ADB shell Monkey-p com.htc.weather--pct-appswitch 70 1000
--pct-anyevent {+ percent}
Adjusts the percentage of other types of events. It includes all other types of events, such as keystrokes, other infrequently used device buttons, and so on.
ADB Shell Monkey-p Com.htc.Weather
--pct-anyevent 100 1000* Specify the percentage of multiple types of events:
adb shell monkey-p com.htc.weather--pct-anyevent--pct-appswitch 50 1000
Note: The total percentage of each event type cannot exceed 100%;
Android Command Monkey stress test, detailed