Как автоматически создавать отчеты об эффективности для приложения iOS?

Для некоторых моих проектов приложений iOS я хотел бы, чтобы мой CI-сервер мог сообщать о следующих свойствах:

  • время запуска
  • частота кадров

как в виде графика с течением времени, так и с «минимальными отметками», поэтому сборка завершается ошибкой, если измеренные результаты не соответствуют определенным критериям. Я уже нашел кое-что из того, что мне нужно.

  • CI-сервером будет Jenkins.
  • Я могу использовать Transporter Chief , чтобы загрузить встроенное приложение на iPad.
  • Чтобы измерить время запуска, я мог найти время между запуском main()и выходом application:didFinishLaunchingWithOptions:.
  • Чтобы измерить частоту кадров, я могу поместить CADisplayLinkв приложение и попробовать его свойство duration.
  • Если эти тесты выводят JMeter XML, то Jenkins может отображать выходные данные с помощью подключаемого модуля Performance .

Чего я не понял, так это того, как мне встроить эти тесты в свое приложение и запустить его на iPad? Как описано выше, я могу развернуть приложение на iPad, но тогда я не знаю, как его запустить, чтобы собрать результаты тестов. Мои модульные тесты выполняются на симуляторе -. Очевидно, я не хочу запускать там тесты производительности :-).

Я предполагаю, что есть решение, включающее джейлбрейк iPad и управление приложением через SSH, я бы предпочел не идти по этому пути, если это возможно. Если вы сделали это и можете объяснить, как это работает, я все равно хотел бы услышать об этом.

18
задан 22 July 2012 в 10:03
поделиться