Как запустить CTS из командной строки в Windows?

StackOverflow https://stackoverflow.com/questions/8829316

  •  27-10-2019
  •  | 
  •  

Вопрос

Для Android 2.3 я использую эту командную строку для входа в консоль CTS :

<цитата>

java -Xmx512M -cp % CTS_ROOT% \ tools \ ddmlib-prebuilt.jar;% CTS_ROOT% \ tools \ cts.jar;% CTS_ROOT% \ tools \ junit.jar; % CTS_ROOT% \ tools \ hosttestlib.jar com.android.cts.TestHost % CTS_ROOT% \ репозиторий / host_config.xml

Есть ли аналогичный способ запуска Android 4.0 CTS без использования cygwin?

Это было полезно?

Решение

Для запуска Android 4.0+ CTS в Windows

вот мое решение: (я предполагаю, что все пути (adb) / classpath (Java) установлены правильно)

1. скачать и разархивировать файл CTS (например, я помещаю все распакованные файлы в D: \ cts, папка будет иметь вид D: \ cts \ android-cts)

http://source.android.com/compatibility/downloads.html

2. создать файл cts_windows.bat и положить в папку с инструментами. (в моем случае это D: \ cts \ android-cts \ tools \ cts_windows.bat)

отредактируйте файл cts_windows.bat, используя приведенный ниже код (не забудьте использовать свой собственный путь -DCTS_ROOT):

родовое слово
  1. выполнить файл cts_windows.bat, и он будет преобразован в оболочку типа "cts-tf>" тогда вы можете запустить cts с помощью команды "run cts --plan CTS".

для получения дополнительных инструкций прочтите руководство по адресу http://source.android.com/compatibility/android-cts-manual-r4.pdf

Другие советы

Для 4.1 CTS Suite я выполнил различные задачи, которые разрешили мою проблему.

Для пользователей Windows, использующих Cygwin:

  1. Измените настройку JAR_PATH в строке 81, заменив двоеточие точкой с запятой.
    Также добавьте кавычки вокруг присвоения.Это должно выглядеть так:

    Плохо : кодовый код

    Хорошо : генерирующий код тега

  2. Обязательно запускайте скрипт cts-tradefed в том же каталоге!
    Строка 73 предполагает, что если CTS_ROOT не определен, то пользователь находится в том же каталоге, что и cts-tradefed.
    Но инструкции говорят человеку запустить сценарий из каталога cts-android.


    Хорошо: ./cts-tradefed
    Плохо: ./android-cts/tools/tradefed

Могу запустить CTS в Windows. Вышеуказанное исключение устраняется путем передачи правильного корневого каталога CTS.

По умолчанию CTS ссылается на android-cts как на корневой каталог, поэтому мы должны поддерживать папку как "D: \ Android \ android-cts"

Передать -DCTS_ROOT= D: \ Android

Итак, "Причина: java.io.FileNotFoundException: папка установки CTS D: \ cts \ android-cts" будет устранена.

java -cp ddmlib-prebuilt.jar; tradefed-prebuilt.jar; hosttestlib.jar; cts-tradefed.jar -DCTS_ROOT= D: \ Android com.android.cts.tradefed.command.CtsConsole

С помощью приведенного выше сценария я могу ЗАПУСТИТЬ CTS на моем пользовательском устройстве.

Спасибо., Ганеш Кумар Рамамурти

Я бы не рекомендовал запускать CTS в Windows.

До Android 4+ предлагаемый здесь обходной путь (использование командного файла) действительно работал, но когда я попробовал его, было много сбоев, а многие тесты даже не выполнялись. Кроме того, согласно документации Google CTS, он должен работать только на Linux или MAC, поэтому как вы можете гарантировать, что сбои вызваны тестируемым устройством (реальный сбой) или потому, что вы используете его в неподдерживаемой среде?

Тем не менее, начиная с Android 6+, использование командного файла в Windows не помогло мне, CTS будет искать bash, который существует только на машине Linux, и прекратит выполнение до его запуска.

При попытке запустить в Linux все работает прекрасно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top