問題タブ [android-monkey]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - モンキーランナーとAndroidViewClientを使用して、指定されたテキストを含むビューをクリックする方法は?
モンキーランナーとAndroidViewClientを使用して、Androidタブレットのクリックをシミュレートしようとしています。特定のテキストがあるリージョン/ビューをクリックしたい。これが私がやろうとしていることの例です:
MonkeyRunner、MonkeyDevice、ViewClientをインポートするスクリプトがあります
from com.dtmilano.android.viewclient import ViewClient
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
タブレットを接続し、MonkeyDeviceオブジェクトを作成します
device = MonkeyDevice.waitForConnection()
次に、デバイスを使用してAndroidViewClientオブジェクトを作成します
vc = ViewClient(device)
タブレットで設定アプリを開きます
device.startActivity('com.android.settings/.Settings')
次に、次を使用して目的のビューを見つけます。
displayView = findViewWithAttribute('text:mText', 'Display')
次に、そのビューをクリックしてみます(タッチイベントをシミュレートします)。
displayView.touch()
問題は、このスクリプトが画面の別の部分、つまり設定アプリのWiFi回線の左側のどこかに触れていることです。
ViewClientのソースコードを調べたところ、touch()メソッドがビューの(x、y)座標を返し、MonkeyDevice.touch()メソッドを使用していることがわかりました。ただし、返される(x、y)座標は、ビューの親を基準にしています。
ビューオブジェクトの正しい(x、y)座標を取得する方法を知っている人はいますか?
または、少なくともビューの親を取得する方法。
android - AndroidモンキーはSpinner内でNullPointerExceptionをトリガーします
コード内で再現が難しい問題を見つけようとしています。モンキーツールを使用しました。しかし、ここでは、問題はAndroidスピナーの内部にあるようです。それはAPI/フレームワークの問題ですか?同じ結果でもう一度試してみました。
android - Android サルが原因で、ネイティブ ライブラリでアプリケーションが応答しません
実行時にこれを取得しますmonkey -v -p package.name --throttle 1 --pct-syskeys 0 100000
。
これは自分のコードではないと思いますか?Android の描画コードのようです。ジェリービーン 4.1.1.
android - Android モンキーが android.widget.HeaderViewListAdapter でアダプタ通知例外を引き起こす
私は共通の問題を抱えています:
しかし、アダプターは私のコードではありませんが、android.widget.HeaderViewListAdapter
これは Jellybean を使用しています。
HeaderViewListAdapter
、ListAdapter
およびのソース コードを読みましたListView
。の項目数が によって提供された数と等しくないIllegalStateException
場合、 がスローされます。この場合、 はです。s カウントは、クライアント コードによって渡されたオリジナルのカウントに、ヘッダーとフッターのサイズを加えたものです。ListView
ListAdapter
ListAdapter
HeaderViewListAdapter
HeaderViewListAdapter
ListAdapter
コードをたどりました。へのすべてのアクセスListView
は UI スレッド上で行われ、常にnotifyDataSetChanged()
アダプターへのアクセスが続きます。ワンフッターを使用しています。
通常の使用では発生しません。モンキーのせい?しかし、Monkey はどのようにして私の変数を他のスレッドから変更できるのでしょうか?
- さらにモンキー テストを行った後に更新する
への呼び出しを削除して、フッターを削除しましたaddFooterView()
。Monkey はもはや例外をトリガーしません。addFooterView()
ある時点でへの呼び出しを削除する必要がありますか?
android - 時間間隔に応じた画面の向きの自動変更
画面の向きを横から、つまり500ミリ秒ごとに愛国者とその逆に回転させたいと思いました(これは実際のデバイス上にあります(エミュレーター上ではありません))。現在の画面の向きを回転できるシェル コマンドはありますか? これはどのアプリにも対応していません。現在のアクティビティに関係なく、利用可能なすべての方向に画面を回転させたいだけです
画面を横向きに変更するためにadbシェルで確認しました:
サービスコール窓口 18 i32 1
画面を縦向きに変更します。
サービスコール窓口 18 i32 0
しかし、これらは実際のデバイスでは機能していません。これを行うためのより良い解決策を提供してください。私にとって本当に役に立ちます。
少なくとも、この自動方向付けを行う利用可能なスクリプト/APK を共有/指摘してください。
前もって感謝します
android - モンキーラン中に画面の向きを変える
モンキーコマンドを使用して、アプリでストレステストを行っています。しかし、画面の向きに関してもっとテストして、向きを変更しながらいくつかの heapupdates を検出してキャプチャしたいと思います。アプリ/アクティビティの実行中に画面の向きを変更するサルコマンド/引数について、Android公式サイト全体を検索しました。しかし、運が悪く、あなたのような専門家に尋ねることは考えられませんでした.
これについてのアイデアがあれば、私に知らせてください。
android - Androidモンキーツールで時間変更をスキップする方法
モンキー ツールを使用して、アプリや他のアプリの UI ストレス テストを実行しています。 .
サルがアプリを実行している間、時間をハードコードする方法、または時間に触れない方法はありますか..
-ありがとう。
android - Android Monkey が scriptlog.txt に書き込みません (許可が拒否されました)
Androidモンキーツールの使用を開始したばかりで、実行中に次の何千行も出力されることを除いて、正常に機能しています。
/mnt/sdcard への書き込みに失敗するのはなぜですか? ホスト マシンの別のディレクトリに書き込むオプションや、ログを完全に無効にするオプションはありますか?
問題があれば、私のデバイスはルート化されていません。
また、Windows 管理者シェルでコマンドを実行しようとしましたが、役に立ちませんでした。
android - Monkey が出力を提供していません: 実行するアクティビティが見つかりませんでした。Monkey は中止されました
Monkey テスト ツールは初めてです。次のコマンドを実行すると表示されます。
adb shell monkey -p "パッケージ名" -v 3
このコマンドをプロジェクト ディレクトリ内から渡すか、プロジェクトが存在するワークスペースから渡すかは明確ではありません。
実行するたびに、次のエラーが表示されます
:Monkey: seed=0 count=3
:AllowPackage: com.and
:IncludeCategory: android.intent.category.LAUNCHER
:IncludeCategory: android.intent.category.MONKEY
** 実行するアクティビティが見つからないため、サルは中止されました。
前もって感謝します
android - モンキーの実行時に getDrawingCache が null を返す
スクリーンショットを取得するための次のコードがあります
コードはonOptionsItemSelected
UI スレッドにあります。
手動でテストすると問題なく動作します。ただし、モンキーでアプリを実行すると、モンキーモードで常に null になるのか、モンキーのランダム性のためにたまにだけになるのかわかりませんbitmap
。null
なぜ猿が違う行動をすることができるのか、何か考えはありますか? 後でコードにヌル ポインター チェッカーをやみくもに追加したくありません。
ありがとう