Intereting Posts
Ошибка Proguard при экспорте подписанного приложения с использованием пакета совместимости сотовых пакетов android.support.v4.app Создание элемента MembersInjector для . Предпочитают вместо этого запускать процессор кинжала над этим классом Есть ли хороший сайт для отслеживания вашего рейтинга на Android Market? Как играть в аудиофайл в android Android SearchRecentSuggestions – предложения не отображаются при вводе в SearchView Такое же меню вариантов во всех мероприятиях на Android Android – Как получить позицию в bindView, как в getView? Уровень безопасности для Android в edittext Android пытается использовать переработанное растровое изображение, а не в моем коде Текст-заполнитель (только процесс проектирования) в макете Android? Обновление базы данных Android Android и приложений Подключение к парному Bluetooth-устройству от Xamarin на Android Получить SSID при подключении WIFI Как получить событие на анкете checkbox check change? Различные имена приложений для разных вариантов сборки?

Как автоматически генерировать отчет для тестирования Android в HTML

Я хотел бы автоматически генерировать отчет о единичном тестировании в формате html для приложения Android на сервере непрерывной интеграции Hudson.

Поэтому я сначала пытаюсь запустить тестовые примеры и собирать файлы результатов теста в формате xml. Затем я использую JUnitReport Task для преобразования файлов результатов XML в формат HTML.

Я запускаю тестовые примеры через платформу Android. Однако он предоставляет только подробные данные вывода, а не стандартный формат JUnit XML. Я не знаю, как создать тестовый отчет HTML-блока без файлов результатов JUnit XML.

Если я запускаю тестовые примеры с использованием Eclipse, он может экспортировать результаты в файлы XML с расходованной информацией за каждый тестовый пример. Эти XML-файлы могут быть правильно преобразованы в HTML с помощью JUnitReport Task. В результате кажется, что можно собрать результат теста с потребленной временем информацией.

Есть ли способ получить стандартный файл результата JUnit XML автоматически после запуска тестовых примеров на платформе Android-инструментов?

Solutions Collecting From Web of "Как автоматически генерировать отчет для тестирования Android в HTML"

У нас была схожая проблема в нашей компании. Мы проверили все доступные решения с открытым исходным кодом, и ни один из них не был действительно совершенным. Поэтому мы разработали и только открыли для него решение. Я до сих пор не говорю «окончательный», но, безусловно, намного лучше, чем афина или репортер python или любой последующий анализ. Вы можете найти его здесь: http://code.google.com/p/the-missing-android-xml-junit-test-runner/

Это обеспечивает:

  • Отдельный XML-файл для каждого пакета
  • XML-файлы создаются на устройстве (необходимо выполнить adb pull'ed после теста)
  • Время тестирования полностью поддерживается
  • У нас есть полная трассировка стека, сообщаемая в случае сбоя / ошибки

Вместо анализа исходного кода java (как в athena) или анализа вывода (скрипта python) мы расширили возможности андроидного инструментария. Таким образом, мы получаем все преимущества использования стандартных параметров командной строки для выбора теста, включения покрытия и т. Д. – все описано здесь: http://developer.android.com/guide/developing/testing/testing_otheride.html#RunTestsCommand .

Нам удалось успешно запустить код с использованием стандартных правил тестирования с охватом, проанализированным emma, и все это хорошо описано в Jenkins.

Я только что увидел, что Дэн Уотлинг из DroidDudes работает с инструментом Athena, который, похоже, похож на то, что вы хотите.

Вы можете найти его там: http://droiddudes.com/

Я не думаю, что это возможно, поэтому вам нужно создать утилиту, которая преобразует выход тестового бегуна Android в файлы XML в формате JUnit.

Однако вы не сможете получить значение времени для теста, так как бегун для тестирования Android, похоже, не выводит эту информацию.

Я думаю, что подход athena – это не больно, поскольку вы можете просто установить файл athena jar в своей системе и добавить следующую цель муравья

<property name="junit.dir" value="${basedir}/junit-results"/> <property name="athena.jar" value="/home/cruise/athena/athena-1.1.2.jar"/> <target name="prepare" description="Setup needed directories"> <mkdir dir="${junit.dir}"/> </target> <!-- This target will compile/install tested project as well as test project to ensure tests are executed against latest code --> <target name="athena" depends="prepare, -install-tested-project, install" description="Run tests and convert result to xml using athena"> <exec executable="java" os="Linux" failonerror="true"> <arg value="-cp"/> <arg value="${athena.jar}"/> <arg value="com.synaptik.athena.Athena"/> <arg value="${basedir}"/> <arg value="${junit.dir}/TEST-result.xml"/> </exec> </target> 

Из командной строки это просто вопрос запуска ant athena, и у вас есть результат теста в xml. Это также будет целью, которую должен вызвать ваш скрипт CruiseControl.