Monkey Tool Use detailed

Source: Internet
Author: User

In the previous section, the Monkey tool was described using the environment of the building, portal. In this section I will describe in detail the use of the Monkey tool.

First, Monkey test introduction

Monkey testing is a means of Android platform automation, through the monkey program to simulate the user touch screen, sliding trackball, keystrokes and other operations to test the program on the device, testing the duration of the program is 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;

We do the monkey test by executing in the cmd window: adb shell Monkey {+ command arguments}.

Third, get the simple help of Monkey command

Execute 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.test 100

Description: Com.test 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.test–p com.test2-p COM.TEST3 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

#cd Data/data

#ls (Root permission is required for real machine debugging)

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.test–v 100

Description: A default value that provides only a small amount of information, such as startup hints, test completion, and final results

Log levels Level 1

Sample adb shell monkey-p com.test–v-v 100

Description: Provides a more detailed log, including each event message sent to the activity

Log Levels Level 2

Sample adb shell monkey-p com.test–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.test–s 10 100

Monkey test 2:adb Shell monkey-p com.test–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. The sequence of operations is 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-random;

4) Parameters:-throttle < ms >

Used to specify the delay between user actions (that is, events), in milliseconds;

Example: adb shell monkey-p com.test–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 until the event count is complete.

Example 1:adb Shell monkey-p com.test--ignore-crashes 1000

Even if the test program crashes during testing, Monkey continues to send events until the number of events reaches 1000;

Example 2:ADB Shell monkey-p com.test 1000

During the test, if the test program crashes, the 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, monkey will still send events until the event count is complete, even if the application has a ANR error.

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, monkey will still send events until the event count is complete, even if the application has a licensing error.

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 only stationary in the state where the error occurred and the system does not end the application's process).

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)

Example 1:--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.test--pct-touch 10 1000

Case 2:--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.test--pct-motion 20 1000

Case 3:--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.test--pct-trackball 30 1000

Case 4:--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.test--pct-nav 40 1000

Case 5:--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.test--pct-majornav 50 1000

Case 6:--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.test--pct-syskeys 60 1000

Case 7:--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.test--pct-appswitch 70 1000

Case 8:--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.test–pct-anyevent 70 1000

Case 9:--pct-anyevent 100 1000* Specify the percentage of multiple types of events:

adb shell monkey-p com.test--pct-anyevent--pct-appswitch 50 1000

Note: The total percentage of each event type cannot exceed 100%;

Monkey Tool Use detailed

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.