Androidアプリのストレステスト
1.
モンキーツールの紹介:これは、Androidアプリを自動的にテストできるツールです。モンキースクリプトを記述し、monekeyランナーで実行し、人間の操作をシミュレートし、アプリの自動化テストを完了し、最後にアプリの変更ログをアプリの変更のために開発に配信する必要があります。
adbコマンド:携帯電話でmonkeyツールを制御して使用します。また、adcを使用して携帯電話でのインストールとアンインストールを完了できます。
モンキースクリプト:繰り返される操作を完了するのに役立ちます
MonkeyRunner:3つの主要なAPIを提供します
2. 2つの背景に関する質問
1.ストレステストを実施する理由
製品の安定性を向上させます。
製品の保持率を向上させます。
2.ストレステストを開始するタイミング
機能テストの最初のラウンドに合格した後。
仕事帰りに夜に実施。
3、7の基本的な知識
1.手動テストシナリオと自動テストシナリオ
手動テストの理論的分析によれば、自動テストの中心的な問題はイベントフローの問題を解決することであり、イベントフローは操作または携帯電話が問題を処理しているときの発言です実行中のプロセスです。
イベントフローのシミュレーション
2.モンキーテストツールの概要
1)モンキーとは何ですか?
Monkeyは、疑似ランダムユーザーイベントを送信するためのツールです。
2)猿はどこですか
私たちの携帯電話システムで。それと通信するには、ADBを使用する必要があります。
3)ADBとは何ですか?
Android Debug Bridge Android Debug Bridge、ソフト接続adb、携帯電話とコンピューター間の接続
ADB
3. MonkeyScriptテストコマンドコレクションの概要
1)MonkeyScriptとは何ですか?
MonkeyScriptは、Monkeyが認識できるコマンドのセットです。
MinkeyScriptは、修正された繰り返し操作を完了することができます。
2)MonkeyRunnerとは何ですか?
MonkeyRunnerは一連のAPIを提供します。
MonkeyRunnerは、シミュレーションイベントとスクリーンショット操作を完了することができます。
3)MonkeyとMonkeyRunnerの違いは何ですか?
モンキー:adbshellで、ユーザーまたはシステムの疑似ランダムイベントを生成する
MonkeyRunner:APIを介して特定のコマンドとイベント制御機器を定義します
4)MonkeyRunner APIS
MonkeyRunner:デバイスまたはシミュレーターへの接続に使用
MonkeyDevice:アプリケーションのインストールとアンインストールを提供し、シミュレートされたイベントを送信します
MonkeyImage:画像の保存と比較の操作を完了します。
5)MonkeyRunnerのテストタイプ
マルチデバイス制御
機能テスト
回帰試験
4.異常なテスト結果
クラッシュ:クラッシュ、アプリケーションは使用中に異常終了します
ANR:アプリケーションが応答しない
ANR状況アイコン
4、6の小さな練習例
1. Androidストレステストの練習
テスト環境の準備:Android SDK環境、Python環境
Android SDKリンクをダウンロードします。www.android-studio.org
Pythonダウンロードリンク:https://www.python.org/
Pythonの学習、学習方法、学習ルート、効率的な学習方法について質問がある場合は、いつでも相談することができます。体系的な学習教材が不足している場合は、私はこの業界に長い間携わっており、経験が豊富だと思います。 、あなたが建設的な提案をするのを助けることができます、これは私のPython交換QUNです:785128166、あなたが質問をするならば、遠慮なく私に相談してください。
練習ステップ:
手順1:携帯電話の開発者向けオプションで、[USBデバッグ]を選択します。
アイコン
手順2:電話とコンピュータが正常に接続されていることを確認し、adbデバイスで確認します。
アイコン(携帯電話独自のロゴ名)
ステップ3:APPコマンドのインストールとテスト:adb install package.apk。
ステップ4:圧力コマンドコマンドを送信:adb shell monkey 1000 サルが1000個のイベントをランダムに送信することを意味します
アイコン
ステップ5:APPパッケージ名コマンドを取得します:adb "logcat | grep START"。
アイコン
アプリのパッケージ名とプロセス名を取得する方法もあります。次の接続の手順5を参照してください。これは比較的簡単です。(https://www.jianshu.com/p/5cd011bc1a46)
ステップ6:指定されたパッケージ圧力コマンドを与えます:adb shell monkey -p package 1000
例:Tencentの控除など:adb shell monkey -p com.tencent.mobileqq 1000
注:スマートフォンがロックされている場合は行わないでください。IO例外が報告されます。
アイコン
2.Monkey拡張パラメーター-
スロットル練習スロットル:イベント間の間隔を指定します
adb shell monkey --throttle
図(100イベントを実行、各イベント間隔は1000ミリ秒)
3.サルの詳細パラメータ-
シードプラクティスシード:ランダムに生成された数値のシード値を指定します
ランダムな値を指定し、特定の状況を再現するために実行するたびに同じ操作を生成します。
adbシェルモンキー-s
アイコン
4.Monkeyの高度なパラメーター-タッチの実践的な練習
タッチイベント:タッチイベントの割合を設定する
adb shell monkey --pct-touch
アイコン
5.Monkey詳細パラメーター-その他のイベントプラクティス
アクションイベント:アクションイベントの割合を設定します
adb shell monkey --pct-motion
アイコン
トラックボールイベント:トラックボールイベントの割合を設定します
adbシェルモンキー--pct-trackball
基本的なナビゲーションイベント:基本的なナビゲーションイベントの割合を設定し、デバイスの上部、下部、左、右を入力します
adbシェルモンキー--pct-nav
メインナビゲーションイベント:中央ボタン、戻るボタン、メニューボタンと互換性のあるメインナビゲーションイベントの割合を設定します
adb shell monkey --pct-majornav
システムナビゲーションイベント:システムナビゲーションイベントの割合を設定します。ホーム、戻る、ダイヤル、音量キー
adbシェルモンキー--pct-syskeys
アクティビティ開始イベント:アクティビティを開始するイベントの割合を設定します
adbシェルモンキー--pct-appswitch
珍しいイベント:珍しいイベントの割合を設定します
adb shell monkey --pct-anyevent
クラッシュイベント:クラッシュと例外を無視する
adb shell monkey --ignore-crashes
タイムアウトイベント:タイムアウトイベントを無視する
adb shell monkey --ignore-timeouts
6. CRASH異常テスト結果の抽出
実践プロセス:
1.クラッシュを引き起こす可能性のあるアプリをインストールする
adb install app-debug_crash.apk
2.圧力コマンドを実行する
adb shell monkey -pパッケージ名1000(1000回実行)
3.クラッシュの例外情報を抽出する
これらのコンテンツを開発に送信できます
シードを使用して上記の例外を再現できます
アイコン
7. ANRの異常なテスト結果抽出の
実践プロセス:
1. ANRを引き起こす可能性のあるアプリをインストールする
adb install app_debug_anr.apk
2.圧力コマンドを実行する
adb shell -pパッケージ名1000