Симулятор веб-камеры - это виртуальная камера, которая подаёт известное видео, изображение или экран в любое приложение так, будто это настоящая веб-камера, чтобы вы могли тестировать функции камеры с одним и тем же входным сигналом каждый раз. В Windows это бесплатно делает FakeCam: загрузите тестовый клип или тестовую таблицу, нажмите Воспроизвести и выберите FakeCam как камеру в тестируемом приложении. Ни освещения, ни объектива, ни сюрпризов, и ровно те же кадры при каждом прогоне.
Зачем симулировать веб-камеру, а не использовать настоящую?
Настоящая веб-камера - худшая из возможных тестовых фикстур. Её картинка меняется вместе с освещением, временем суток, тем, кто сидит перед ней, и тем, надета ли крышка на объектив. Для тестирования нужно обратное: входной сигнал, который детерминирован (одинаковые кадры при каждом прогоне), воспроизводим (любой тестировщик, любой ПК, тот же результат) и управляем (вы сами выбираете разрешение, движение, соотношение сторон и даже чёрный кадр). Симулятор веб-камеры даёт именно это:
- QA видеофункций. Предпросмотр камеры, снимок, запись, размытие фона, распознавание лиц, сканирование QR-кодов, видеозвонки: прогоняйте каждую из них на клипе, который вы знаете покадрово.
- Воспроизведение бага. Жалоба клиента "камера показывает чёрную картинку" воспроизводима, когда вы можете намеренно подать чёрный кадр.
- Граничные случаи по запросу. Вертикальное видео, вход 4:3 в предпросмотре 16:9, очень быстрое движение, неподвижный кадр, который никогда не меняется, источник 640 x 480: каждый из них - файл, который вы храните.
- Демонстрации и обучение. Демо-камера показывает один и тот же отшлифованный клип на каждой сессии, как бы ни выглядела комната.
- Машины без камеры. Настольный ПК, билд-агент, на котором кто-то тестирует вручную, виртуальная машина: виртуальная камера даёт им камеру.

Что понадобится
- ПК с Windows 10 или 11 (физический или виртуальная машина с сеансом рабочего стола).
- FakeCam, бесплатно. Он регистрирует одну виртуальную камеру с именем "FakeCam".
- Ваши тестовые данные: видеофайл (MP4, MOV, AVI, WMV, MKV), изображение (PNG, JPG, GIF, BMP) или сам экран.
Настройте симулятор веб-камеры за 4 шага
- Установите FakeCam и один раз нажмите Включить, чтобы Windows добавил камеру (один запрос прав администратора, потом больше никогда).
- В Настройках задайте Разрешение камеры, которое должно получать тестируемое приложение: 640 x 480, 1280 x 720 или 1920 x 1080. Именно этот формат приложение увидит при перечислении устройств.
- Перетащите тестовый клип или таблицу в FakeCam и нажмите Воспроизвести. Включите Повтор для клипа, который должен идти всю тестовую сессию.
- В тестируемом приложении выберите FakeCam как камеру. Запускайте FakeCam до приложения: большинство приложений читают список камер только при запуске.

Чтобы сменить входной сигнал посреди теста, перетащите в FakeCam другой файл: приложение продолжает работать с той же камерой и просто получает новые кадры. Чтобы проверить сценарии "нет камеры" или "камера отключена", нажмите Стоп или уберите камеру из системы кнопкой Отключить.
Тестовый набор, который стоит сохранить
Четыре входных файла покрывают большинство тестовых случаев для камеры. Держите их в папке рядом с тест-планом.

| Входной сигнал | Что он ловит |
|---|---|
| Тестовая таблица (цветные полосы, круг, сетка) | Обрезку, растяжение, неверное соотношение сторон, сдвиг цветов, зеркалирование: круг, ставший овалом, или обрезанная полоса видны с первого взгляда |
| Клип с быстрым движением (быстрая панорама, движущиеся детали) | Потерю кадров, качество кодировщика, задержку в звонке, предпросмотр, отстающий от камеры |
| Портретный клип (один человек, ровный свет) | Распознавание лиц, размытие и замену фона, автокадрирование, сценарии проверки личности в вашем собственном продукте |
| Чёрный кадр или неподвижное изображение | Сценарии поддержки "камера не работает", детектор отсутствия движения, функции скриншота и снимка |
Сохраните таблицу ниже и воспроизведите её через FakeCam: на ней намеренно нет текста, поэтому она подходит для любого языка вашей команды тестирования.

Симулятор или флаги фейковой камеры Chrome
Если вы тестируете только веб-приложение в автоматизированном браузере, у Chrome и Edge есть встроенная фейковая камера: запустите браузер с флагом --use-fake-device-for-media-stream, а чтобы подать свой файл, добавьте --use-file-for-fake-video-capture=clip.y4m. Playwright и Puppeteer подключают эти флаги за вас. Для CI это правильный инструмент. Но он ограничен браузером: ничто за пределами этого процесса браузера камеру не видит.
Виртуальная камера вроде FakeCam работает на уровне Windows, поэтому её видит каждое приложение: настольные программы, приложения на Electron, приложение "Камера" Windows, видеозвонок в настоящем клиенте Zoom и обычная сессия браузера, запущенная тестировщиком вручную. Честное сравнение:

| Флаги фейкового устройства Chrome | Виртуальная камера FakeCam | |
|---|---|---|
| Где существует камера | Только внутри этого процесса браузера | Во всей Windows, в любом приложении |
| Входные форматы | Файлы Y4M / MJPEG | MP4, MOV, AVI, WMV, MKV, изображения, экран |
| Автотесты (CI) | Да, для этого и созданы | Нет: FakeCam управляется вручную |
| Ручное QA настольных приложений | Нет | Да |
| Настоящие клиенты для встреч (Zoom, Teams, Discord) | Нет | Да |
| Смена входного сигнала посреди теста | Перезапуск браузера | Перетащите новый файл |
| Стоимость | Бесплатно | Бесплатно (необязательная разовая покупка PRO) |
Используйте оба: флаги в пайплайне, виртуальную камеру для исследовательского тестирования, настольных приложений, воспроизведения обращений в поддержку и демонстраций.
Советы для надёжных результатов
- Подбирайте разрешения осознанно. Проверяйте каждое разрешение, которое поддерживает приложение, меняя настройку Разрешение в FakeCam и перезапуская приложение: многие приложения перечисляют форматы один раз.
- Используйте Повтор для долгих сессий. Зацикленный клип держит камеру "в эфире", пока идёт тест; клип, который закончился, оставляет на экране последний кадр.
- Зеркало - тоже тестовый случай. Приложения для встреч зеркалят ваш собственный вид, но не то, что видят остальные. Переключатель Зеркало в FakeCam позволяет проверить оба варианта.
- Экран как входной сигнал. Откройте вкладку Экран, чтобы подать в камеру живое окно приложения (таймер, страницу с QR-кодом): это полезно для функций сканирования. Подробности в статье как использовать экран в качестве веб-камеры.
- Одно приложение за раз. Камеру может открыть только одно приложение одновременно. Закройте предпросмотр в предыдущем приложении, прежде чем начинать следующий тест.
Чего симулятор веб-камеры не делает
- Ни скриптов, ни командной строки. FakeCam - ручной инструмент: файлы вы загружаете сами. Для скриптовых тестов в браузере используйте флаги Chrome, описанные выше.
- Без звука. Виртуальная камера заменяет только картинку камеры. Тестируйте путь микрофона отдельно.
- Это не виртуальная камера для мобильных. Она работает в Windows. Для Android похожую задачу решает виртуальная сцена камеры в эмуляторе.
- Не для обхода проверок. Симулятор веб-камеры - инструмент для тестирования и демонстраций. Использовать его, чтобы обойти чужую проверку личности, не его назначение, и ряд сервисов это запрещают.