Если идея состоит в том, чтобы понять, как изменения кода влияют на производительность, и убедиться, что производительность выше или равна предыдущим сборкам, то вам необходимо каждый раз запускать тесты на известном профиле оборудования.Наиболее точный способ сделать это - настроить машину (ы), которую вы используете для тестирования каждый раз, когда выполняются тесты.Если многим разработчикам необходимо сделать это, иногда одновременно, возможно, стоит создать образ виртуальной машины, который они могли бы развернуть и указать на который должны выполняться тесты.
Не следует запускать их на самих полях разработчиковпотому что, как вы упомянули, на результаты этих испытаний могут повлиять всевозможные факторы.
Вам следует избегать попыток измерить производительность, находясь под нагрузкой / нагрузкой снаружи тестируемой системы (малое дисковое пространство,пропускная способность сети, память, процессор и т. д.), если только эти условия специально не заданы как часть теста.Например, у вас может быть 3 различных тестовых прогона, один, когда машина не загружена, другой, где вы находитесь под средней нагрузкой (имитирующей другие программы, работающие в фоновом режиме), и другой под высокой нагрузкой.
Вы можететакже запускайте тесты на различных аппаратных профилях в рамках других стресс-тестов и тестов производительности, но, вероятно, вы не получите особой пользы от их запуска на каждой сборке.Опять же, однако, если вы хотите, чтобы вы могли выполнить несколько разных тестовых запусков на разных аппаратных профилях, это требует дополнительной настройки, поскольку вам потребуются дополнительные компьютеры и / или образы виртуальных машин, а также инфраструктура для запуска тестов на этих машинах.собрать результаты и сообщить о них.