В настоящее время я использую хром в режиме киоска, чтобы показать экран статистики со счетчиком в реальном времени.Браузер показывает счетчик почти 24/7.Счетчик реализован как приложение vue, подписывающееся на данные счетчика с использованием базы данных Google Firebase в реальном времени. Приложение не взаимодействует с пользователем, не движется мышью, не вводит данные с клавиатуры - потому что это простой экран статистики.
Теперь к моей проблеме: Я настроил тесткомплект, чтобы проверить, действительно ли счетчик изменяется после того, как в моей системе произошло определенное действие где-то еще.
Это рабочий процесс, используемый тестовым примером:
- Триггерное действие для изменения счетчика
- Селен: проверьте, не изменился ли счетчик (подождите 60 секунд, чтобы получить новое значение)
Результаты довольно интересные. Через ~ 3 ч счетчик перестает всегда обновляться во времени. Иногда он вообще не обновляется, а спустя часы он обновляется снова.
(Примечание. Инициируемое действие надежноизменяет базу данных. Другие экземпляры страницы статистики показывают обновления, а другие нет)
Кроме того, из моего набора тестов мне удалось воспроизвести это поведение при ручном запуске действия изменения счетчика иглядя на счетчик.
Я ищу решения, чтобы гарантировать, что счетчик надежно меняет свое значение.
Мои наблюдения / идеи из моих попыток найти решение:
- Когда я смотрю на инструменты разработчика chromium прямо в соединение веб-сокета с firebase и сравниваю данные, которые он получает, с недавно загруженной страницей статистики, я вижу, что веб-сокет моей долгоходящей страницы получает только пакеты поддержки с сервера, когда (нав то же время) мои новые страницы подключения получают актуальные обновления.
- Может быть, Google пытаетсяуменьшите нагрузку на свои серверы, проверив, простаивает ли пользователь, просматривающий страницу,
Спасибо за помощь!