2016-10-17 11 views
0

AndroidViewClientを使用して自動テストスクリプトを実行しています。私はスクリプトでいくつかのダンプを行います。このスクリプトはアンドロイドデバイスの速度/応答時間テストに使用され、テストはn> 300で実行されます。私は実行#150で次のエラーを受け取ります。メモリからダンプ(AndroidViewClient/Culebra)データを消去するにはどうすればよいですか?

とValueErrorが( "有効なXMLが含まれていません受け取った:" + receivedXmlを)昇給 とValueError:有効なXMLが含まれていません受信:殺し

いくつかの掘削後

と "memory_profiler" を使用してメモリを監視し、ダンプデータがメモリに積み重なってテストが遅くなり、テスト結果に影響を与えるようです。

1-なぜエラーが発生しますか? 2-ダンプ・データが正確にどこに格納されていますか? 2ダンプするたびにメモリをクリアするには?あなたが記述何

答えて

1

AndroidViewClientあなたはAndroidViewClientを削除する必要があります絶対に確認するために、しかし、API> = 19

のデフォルトのバックエンドとして使用するものであるuiautomator dumpの問題(おそらくあなたのデバイスの実装)のように思えます写真から同じコマンドを実行すると、バックエンドとして使用されます。

AndroidViewClient 12.0.2は、コマンドラインで指定されたいくつかのデバッグオプションをサポートしています.1つはコマンドの実行を決定するのに非常に便利です。

$ dump --debug UI_AUTOMATOR:True > /dev/null 

このコマンドは、これはあなたが問題をあなたのデバイスであるかどうかを判断するために繰り返し実行できるコマンドです

executing 'uiautomator dump --compressed /dev/tty >/dev/null' 

のようなものを出力します。あなたは

for n in {0..299}; do echo $n; adb shell uiautomator dump --compressed /dev/tty \>/dev/null >/dev/null; done 

を実行するとメモリリークか何かのデバイスで失敗がありますかどうかを確認するためにbashを使用する前に、印刷されたコマンドをコピーたとえば

、。

あなたの質問については、コマンドからわかるように、ダンプデータはどこにも保存されず、ソケットにのみコピーされます。 デバイスにローカルにデータを保存する必要があるバージョンがありますが、そのような場合、使用されるファイルは毎回上書きされます。

関連する問題