2013-09-26 3 views
6

Я пишу модульные тесты для библиотеки, использующей WebRTC.Авто, разрешающее разрешения WebRTC в модульных тестах

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

Есть ли флаг или параметр, который я могу изменить, чтобы всегда разрешать доступ к мультимедиа глобально, чтобы мой тестовый пакет не запрашивал разрешения?

Я использую тестовый бегун Jasmine в Chrome.

ответ

6

Хороший вопрос.

EDIT: флаг Chrome -use-fake-ui-for-media-stream, все вызовы gUM будут автоматически приняты, и пользовательский интерфейс никогда не появится.

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

Пара предложений (которые, вероятно, не будет работать для вас, учитывая, что вы пишете библиотеку, а не приложение ...)

  1. Могли вы запускаете тест из приложения Chrome? Если вы используете разрешение audioCapture/videoCapture, разрешение запрашивается только один раз, при установке приложения, а не для каждого сеанса.

  2. Используйте HTTPS для страницы, вызывающей getUserMedia(). Это означает, что разрешение запрашивается только один раз для этого домена, первый раз вызывается gUM.

+0

, если кто-то использует Карму и заинтересован в ее реализации, [это] (http://stackoverflow.com/a/19139844/5272567) должен работать – Matthias

1

Существует список политик, которые Chromium respects Ваш интерес к этим двум возможностям: VideoCaptureAllowed и VideoCaptureAllowedUrls. Также этот вариант был полезен для меня DefaultMediaStreamSetting, но теперь он устарел (я установил его в 1). Как настроить - это зависит только от вашей операционной системы. Посмотрите на for Linux, Mac OS X и Windows

+0

Полезный ответ, но я надеялся, что есть что-то более интегрированное, что не потребует от меня настроек моей конфигурации вне моей тестовой среды (для переносимости). Знаете ли вы о каких-либо инструментах, которые автоматизируют этот процесс? – Rick

+0

Я не нашел никаких инструментов - только это. Но это действительно работает для меня :) –

Смежные вопросы