Android Test Monkey - Установить многословие? - PullRequest
3 голосов
/ 26 января 2011

Как я могу изменить уровень многословия при запуске Test Monkey из командной строки?

Эти две команды работают:

adb shell monkey -p com.my.package 5000
adb shell monkey -p com.my.package -v 5000

Документы разработчика говорят: "Каждый -v накомандная строка будет увеличивать уровень детализации. Уровень 0 (по умолчанию) предоставляет мало информации помимо уведомлений о запуске, завершении теста и окончательных результатах. Уровень 1 предоставляет более подробную информацию о тесте во время его выполнения, например об отдельных событиях, отправляемых в ваши действия.Уровень 2 предоставляет более подробную информацию о настройке, такую ​​как действия, выбранные или не выбранные для тестирования. "

Однако, когда я пытаюсь adb shell monkey -p com.my.package -v -v 5000, я получаю segmentation fault monkey -p com.my....

Я пытался adb shell monkey -p com.my.package -v 2 5000, но обезьяна читает 2 как количество, а не значение для -v.

Помогите?:)

Ответы [ 3 ]

6 голосов
/ 26 января 2011

Должно быть: adb shell monkey -p com.my.package -vvv 5000

0 голосов
/ 03 июля 2019

Я не думаю, что ошибка сегментации вызвана синтаксисом.

adb shell monkey -p com.my.package -v -v 5000

Возможно, вы даете слишком много событий (5000), но это другое обсуждение.

Правильный способ увеличить многословие обезьяны - повторять -v.

// not verbose
adb shell monkey -p com.my.package 100

// verbose 1
adb shell monkey -p com.my.package -v 100

// verbose 2
adb shell monkey -p com.my.package -v -v 100

// verbose 3
adb shell monkey -p com.my.package -v -v -v 100

Вы можете проверить исходный код AOSP самостоятельно, в пакете platform_development/cmds/monkey.

Monkey.java

while ((opt = nextOption()) != null) {
    if (opt.equals("-s")) {
        mSeed = nextOptionLong("Seed");
    } else if (opt.equals("-v")) {
        mVerbose += 1;

MonkeySourceRandom.java

if (ret && mVerbose >= 2) {
    mPermissionUtil.dump();
}

// if verbose, show factors
if (mVerbose > 0) {
    Logger.out.println("// Event percentages:");
    for (int i = 0; i < FACTORZ_COUNT; ++i) {
        Logger.out.println("//   " + i + ": " + mFactors[i] + "%");
    }
}
0 голосов
/ 11 июня 2012

Вот правильная команда для теста на обезьяну:

adb.exe shell monkey -p packagename -v 500   ***or***
adb.exe shell monkey -p packagename -v 500 >> log.txt

log.txt -> будет создан в папке инструментов и все результаты теста будут сохранены в этом текстовом файле.

пример:

C:\android-sdk-windows-1.6_r1\android-sdk-windows-1.6_r1\tools>adb.exe shell monkey -p fr.bouyguestelecom.sync -v 500 >> LOG.TXT

fr.bouyguestelecom.sync = это имя пакета.

...