簡體   English   中英

如何使用android.intent.category過濾猴子要測試的特定活動?

[英]how to filter specific Activities to be tested by monkey using android.intent.category?

我正在嘗試使用猴子練習工具來強調測試我的Android應用程序。

默認情況下,該工具將根據文檔執行具有Intent.CATEGORY_LAUNCHER類或Intent.CATEGORY_MONKEY類的活動

package="my.android" 

    <activity android:name=".activities.MyApp">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>        
    <activity android:name=".activities.MyScreen">
        <intent-filter>
            <category android:name="android.intent.category.MONKEY"/>
        </intent-filter>
    </activity>
    <activity android:name=".activities.MySettings"/>

我不想讓 Monkey設置MySettings

在我的實際情況中,這是因為該活動進行了注銷。 因此,在注銷后,無法登錄以便繼續測試其余屏幕,這是測試的全部概念。

./adb shell monkey -p my.android -v 500
:Monkey: seed=0 count=500
:AllowPackage: my.android
:IncludeCategory: android.intent.category.LAUNCHER
:IncludeCategory: android.intent.category.MONKEY
..
    // Allowing start of Intent { cmp=my.android/.activities.MySettings} in package my.android
..

它應該拒絕而不是允許我猜。 任何想法如何避免猴子進入我不想要的活動?

我處理這個問題的方法是將以下內容添加到您不希望猴子測試的活動的onCreate(...)中:

if (ActivityManager.isUserAMonkey()) { finish(); }

這樣,如果被猴子測試,活動會立即退出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM