Как можно имитировать веб-браузер или просто плагин Flash, чтобы тестировать нагрузку на веб-приложение на основе Flash?
Я думаю, мне не нужен веб-браузер, так как сетевые возможности встроены в автономный плеер. Мне просто нужен какой-то компонент.NET, который позволит мне программно запускать сотни флэш-плееров (без пользовательского интерфейса), воспроизводящих определенный SWF-файл для целей нагрузочного тестирования. SWF-файл обращается к сетевому сервису и загружает другие SWF-файлы, но в основном выполняется самостоятельно до завершения после загрузки в проигрыватель.
Было бы неплохо, если бы такой компонент позволил мне также определить, когда он больше не обращается к сети в течение определенного периода времени, или получить сообщение о том, что SWF-файл завершил свою работу, и в этот момент я завершу этот экземпляр флеш плеер и запускай новый.
Возможно, я мог бы использовать существующий флеш-плеер, но на самом деле я не хочу запускать плеер с пользовательским интерфейсом, мне нужно программировать плеер без пользовательского интерфейса, потому что, если я собираюсь запускать сотни из них на одной машине Мне не нужны накладные расходы на рендеринг всей графики. Я, вероятно, буду работать на нескольких машинах как распределенное приложение.
Какие-нибудь мысли?
3 ответа
Если вам нужны настоящие браузеры (на всех которых установлен Flash 10), проверьте мою компанию BrowserMob. Это эффективно делает " нагрузочное тестирование Selenium". Многие наши клиенты выполняют Flash-автоматизацию, используя наш сервис, и это НАМНОГО проще, чем традиционное нагрузочное тестирование на уровне протокола.
Все, что заботит сервер - это последовательность запросов, это то, что вы хотите смоделировать.
Если SWF-файл использует HTTP для своих запросов контента, JMeter или siege были бы бесплатными инструментами, которые помогут с этим. В противном случае есть много коммерческих инструментов тестирования нагрузки. Я могу сказать вам, что моя компания использует "много", но я, как правило, использую JMeter или осаду, когда я выполняю тестирование перед передачей в QA.
Если вы тестируете потоковое мультимедиа, это становится немного сложнее, и вам, вероятно, придется проверить свою систему как отдельные компоненты.
Я предлагаю книгу Allspaw всем, кто пытается провести нагрузочное тестирование.
Если вы уверены, что ничего не будет работать, кроме запуска флэш-фильма, воспользуйтесь одним из сценариев для создания скриншотов на основе браузера, таких как Thummer. Они загрузят страницу, которую вы ей даете, в Firefox или Safari, и вы можете настроить их так, чтобы они зацикливались, и запускать флэш-ролик.
Инструмент тестирования пользовательского интерфейса, такой как selenium for firefox, может также помочь вам написать сценарий того, что вы хотите сделать, и запустить автоматическую последовательность.
Я также согласен с Ditto - JMeter не только будет имитировать запросы, но и даст вам некоторые полезные метрики, когда вы закончите. Если вы сделаете это самостоятельно с помощью множества браузеров, как вы узнаете, где находятся узкие места?