Итак, серверу, очевидно, нужен какой-то токен, который сообщает ему, что сессия основана на селене.Учитывая это, вот что я хотел бы сделать.
Создать супер простой API на вашем сервере.Пусть этот API возьмет токен сеанса вошедшего в систему пользователя и передаст его в API (почти всегда автоматически).Когда API получит этот токен сеанса, отметьте что-нибудь в базе данных (новая таблица или та же таблица, в которой хранятся идентификаторы сеанса, если таковые имеются).
Пусть API помечает сеанс как тестовый сеанс и, следовательно, недопустим для метрик.
Это не является статистически значимым воздействием на любой сервер, поэтому не нужно беспокоиться о ресурсах или воздействии.
Следует использовать очень простой API с выделенным кодом, очень легкую таблицу, в которой может быть просто один столбец с внешним ключом для соответствующего идентификатора сеанса.Все вставленные идентификаторы сеанса в этой таблице, в силу существующего здесь, являются тестовыми сеансами.
И затем, ваша запись метрик должна будет добавить одно предложение к запросу, который фактически имеет "WHERE (SELECT COUNT (sessionId)) FROM TestSessionsTable WHERE sessionId = currentIdChecked) = 0 "
И это даст вам то, что вам нужно.Я рад, что мне сообщили о лучшем решении, но это выглядит как простейшее усилие с наименьшим влиянием на ресурсы.
Что касается обнаружения сеансов Webdriver на стороне клиента, вы можете использовать C. Peck'sпредложить или напрямую вызвать API из вашей автоматизации, используя логику Javascript Executor WebDriver.