ディレクトリ
モンキーテスト
1. monkey
開始するには2つの方法があります。
最初の方法:シェルエンド開始
- 入ります
adb shell
- ラン
"/system/bin"
のパスの下monkey
のスクリプト
$ adb shell
# cd /system/bin
# monkey
第二の方法:スタート直接PC
次のコマンドによって直接実行します。
$ adb shell monkey [options] <event-count>
2.モンキーコマンドとその使用
monkey
option
動作は、すなわち5つのカテゴリーに分け、特定のニーズに応じて設定されています。
通常のクラス、イベントクラス、クラスの制約、およびデバッグや公式の背後にあるクラス・パラメータ。
2.1サル従来のclassコマンド
-h
:表示monkey
パラメータのヘルプ情報の利用-v
:ログ情報をプリントアウトし、各-v
フィードバック情報のレベルを増加します。コマンドの形式は次のとおりです。
$ adb shell monkey -v <event-count>
-v
より詳細なログ情報ヶ月、今3つまでサポートし -v
、すなわち、:
* 0:ブートに加えて、迅速、完全かつ最終的な試験結果は以下の情報を提供
*レベル1:このようなイベント-のアクティビティを送信するなど、より詳細なテスト情報を提供
*レベル2:インストールは、より詳細な情報を提供し、テストが選択されているような、または選択されたアクティビティ
2.2サルイベントクラスコマンド
-f
:テスト・スクリプト名を受け取った後、使用することを約束しmonkey
、指定実行するmonkey
スクリプトコマンドの例を:
$ adb shell monkey -f <scriptfile> <event-count>
$ abd shell monkey -f /mnt/sdcard/test 10
-s
:その後、シード値乱数ジェネレータ。同じシード値猿が再び実行されている場合は、イベントの同じシーケンスを生成しますランダムリピート操作を実行し、。
コマンドの形式は次のとおりです。
$ adb shell monkey -s <seed> <event-count>
-
-throttle
:このオプションが接続されていない場合、MSの時間(<ミリ秒>)を受信した後、イベント間の固定遅延を表す(即ち、各区間の命令実行時間)は、monkey
遅延がありません。
フォーマット:
$ adb shell monkey --throttle <milliseconds>
--ptc-motion
:受信した後、アクションイベントの割合を。のみならず、操作ジェスチャーイベントを指し、それは擬似ランダムバウンスイベント(すなわち、イベントアップ)一連の特定の位置からプレス(即ち、ダウンイベント)を指します。--ptc-trackball
:受信した後、トラックボールイベントの割合を。トラックボールイベントはランダムな動きのシリーズがあり、そして時折クリックイベントの動きの背後に従ってください。--ptc-nav
:続く基本的なナビゲーション・イベントの割合。基本的なナビゲーションイベントは、主に、入力デバイスを上、下、左、右のイベントからの方向を指します。--ptc-majornav
:続く主要ナビゲーションイベントの割合。メインナビゲーションイベントは、一般に、キーボード5方向ボタン、戻るボタン、メニューボタン等の中間として、いくつかのアクションを開始するグラフィカルインタフェースを指します。--ptc-syskeys
:続くシステムキー・イベントの割合。システムのキーイベントは、通常は、ホームキー、バックキー、ダイヤルキーとして使用するキーシステムを保持するために参照します。--ptc-appswitch
:続くアプリケーション起動イベントの割合。メディカル開始イベントは、一般的に呼び出すことにより、アプリケーションを開かとして知られているstartActivity()
方法を最大化するために、パッケージ内の開いているすべてのアプリケーションを。--ptc-anyevent
:続く他のタイプのイベントの割合。上記のイベントに加えて、他のすべてのイベントの一部です。
制約の2.3猿のコマンド
-p
:一つ以上のパッケージ名が続きます(<許さパッケージ名> )、 アプリケーションが同時にここで指定する必要があり、他のパッケージの活動の内部に、関連するパッケージへのアクセスを必要とする場合。あなたはどのパッケージを指定しない場合、monkey
システムは活動全体のバッグを開始することができます。 各パッケージ名-pために必要とされるパッケージの元Aの複数の指定されたパケットのそれぞれ-p対応など、:
$ adb shell monkey -p <allowed-package-name> <event-count>
$ adb shell monkey -p com.csmijo.test 1000
--c
:一つ以上のカテゴリ名(すなわち、<メインカテゴリ>パラメータ)が続き、monkey
システムは、これらのクラスのカテゴリ活性が記載されている開始することを可能にするだけであろう。あなたが任意のカテゴリを指定しない場合は、サルが選択されますIntent.CATEGORY_LAUNCH
とIntent.CATEGORY_monkey
活動インチ
2.4サルデバッグコマンドクラス
--dbg-no-events
:このオプションを設定した後、サルはさらに、イベントを生成しませんテスト活動に、最初の起動を入力します。フォーマット:
$ adb shell monkey --dbg-no-events <event-count>
-hprof
:これを設定した後になるmonkey
直前と後のイベントのシーケンスを生成しますprofiling report
。 このオプションは、データ/ miscの、注意に5メガバイトのファイルサイズを生成します!--ignore-crashes
:アプリケーションがクラッシュしたり暴走異常が、この設定後、monkey
カウントが完了するまで実行し続けます。このオプションを設定しない場合、monkey
あなたはクラッシュまたは例外が発生した実行を停止します。--ignore-timeouts
:(ANRなどのような)任意のタイムアウトエラーのアプリケーションが発生した場合に、このオプションを設定した後、monkey
カウント数の最後まで実行し続けます。このオプションを設定しない場合は、monkey
遭遇したようにAタイムアウトダイアログが実行を停止します。--ignore-security-exceptions
:このオプションが設定されている場合は、(そのような必要特定の権限の活動を開始するなど)アプリケーションが発生したすべての権限エラーが、monkey
カウントが終了するまで実行し続けます。このオプションを設定しない場合は、monkey
遭遇したように権限エラーが実行を停止します--kill-process-after-error
:このオプションを設定した後、monkey
アプリケーションが停止しているため、エラーが発生した場合に、システムが構成エラーのプロセスが発生した通知されます。あなたがこれを設定しない場合monkey
、アプリケーションエラー停止が実行してまいります場合に発生します。--monitor-nativie-crashes
:このオプションを設定した後、monkey
実行時のnative code
クラッシュのイベントレポートを監視されます。あなたが設定されていない場合は監視されません。--wait-dbg
:実行を一時停止、このオプションを設定した後monkey
、あなたはそれに接続するデバッガを知っています
クラス・パラメータの後ろの公式2.5
--pkg-blacklist-file
:リミットは、monkey
指定されたパッケージのブラックリスト文書レコード(パッケージ)をテストするものではありません。このパラメータにすべてのパッケージを使用しない場合は、猿は、システムをテストします。このパラメータを使用する場合は、紙にブラックリストの文書でサルの実施の範囲をすべての不要なパッケージ名を記録することにより、テストすることができます。 ブラックリスト文書各行は、パッケージ名を置くことができます--pkg-whitelist-file
:制限monkey
ドキュメントパッケージレコードに指定されたテストは唯一の例外。このパラメータ内のすべてのパッケージを使用しない場合は、猿は、システムをテストします。このパラメータを使用する場合は、サルの実施の範囲を限定するために、文書のホワイトリストに包まれ、すべてを記録することにより試験することができます。ホワイトリストのドキュメントの各ラインは、パッケージ名を置くことができます。注意:あなたが他のパッケージに関連したパッケージをテストしたい場合は、このパラメータを実装するために一緒にこれらのパッケージを指定する必要があります。
3.猿スクリプティング
トラックボールイベント
DispatchTrackball(long downTime, long eventTime, int action, float x, float y, float pressure, float size, int metaState, float xPrecision, float yPrecision, int device, int edgeFlags)
アクション、X、Y缶:のみに焦点を当てる必要があります
- ACTION_DOWN = 0
- ACTION_UP = 1
- ACTION_MULTIPLE = 2
入力文字列のイベント
DispatchString(String text)
Clickイベント
DispatchPointer(long downTime, long eventTime, int action, float x, float y, float pressure, float size, int metaState, float xPrecision, float yPrecision, int device, int edgeFlags)
アクション、X、Y缶:のみに焦点を当てる必要があります
アプリケーションを起動します
LaunchActivity(String pkg_name,String cl_name)
イベントを待っています
UserWait(long sleeptime)
単位時間:ミリ秒(ミリ秒)
キーを押してください
DispatchPress(int keyCode)
ロングキーの値
LongPress(int keyCode)
キーを送信
DispatchKey(long downTime, long eventTime, int action, int code, int repeat, int metaState, int device, int scancode)
ソフトキーボードスイッチ
DispatchFlip(boolean keyboardOpen)
3.2猿スクリプティング
type= raw events
count= 10
speed= 1.0
start data >>
captureDispatchPointer(5109520,5109520,0,230.75429,458.1814,0.20784314,0.06666667,0,0.0,0.0,65539,0)
captureDispatchKey(5113146,5113146,0,20,0,0,0,0)
captureDispatchFlip(true)
...
保存方法4.1猿のログ
PC保存、コマンドがあります
$ adb shell monkey [options] <event-count> > d:\monkeylog.txt
adbのシェル猿-p com.bbk.recorder -v 10000> D:\ xxx.txt
次のように携帯電話に保存され、コマンドは次のとおりです。
$ adb shell
# monkey [options] <event-count> /mnt/sdcard/monkeylog.txt
標準エラーストリームの流れと、次のように個別に注文て保存:
# monkey [options] <event-count> 1>/mnt/sdcard/monkeylog.txt 2>/mnt/sdcard/monkeyErrorlog.txt
コンテンツを解析4.2猿のログ
- ANRについての情報を検索キーワード「ANR」を検索
- クラッシュに関する情報を見つけるために、「CRASH」のキーワード検索
---- 4.3サルサーバ隠されたAPIを使用して
启动Money Server
adb shell monkey --port 1080 &
连接Monkey Server
adb forward tcp:1080 tcp:1080
telent 127.0.0.1 1080
4.4Moneyスクリプト生成ツール