| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Распределённые приложения и сеть > Выполнения нагрузочного скрипта. |
| Автор: SerGreY 5.12.2008, 16:16 |
| Необходимо создать механизм нагрузочного тестирования для выполнения нагрузочного скрипта вида: Browser br = new Browser(); br.OpenPage("www.qoogle.ru") br.Text("q", "aaa"); br.Click("btnG"); Нагрузочное тестирование означает, что скрипт должен параллельно выполняться в несколько потоков в параллельно работающих браузерах (количество потоков - до 100). Необходимо именно выполнение описанных действий, а не простых Http запросов, поэтому варианты вроде HttpWebRequest пока не рассматриваются, как наиболее затратные по времени реализации. Изучил следующие средства: 1. Контрол GeckoFX - на основе движка Gecko (от Firefox). Позволяет выполнять скрипт, только когда находится на форме. При попытке выполнить в параллельном потоке выдает ошибку. Пытался отделить визуальное представление - пока не удается (ошибки при инициализации). 2. Библиотека ShDocVw - движок IE. Такой скрипт можно выполнить при помощи библиотеки ShDocVw, даже в параллельных потоках, но есть определенные трудности: При возниконовении ошибки при открытии страницы, самопроизвольно открывается окно IE с сообщением об ошибке. Причем событие об ошибке в коде не перехватывается. Если IE начинает не хватать памяти, то все запущенные окна открываются, затем вызывая критическую ошибку IE. Принимаются любые советы по альтернативным средствам для создания нагрузки. Кто сталкивался с подобными вопросами ? Жду ответов. Спасибо. |
| Автор: PashaPash 5.12.2008, 20:04 |
| SerGreY, Visual Studio Test или Team вполне справится. |
| Автор: SerGreY 6.12.2008, 09:04 | ||
Спасибо за предложение. Но мне необходимо реализовать механизм нагрузочного тестирования на основе одного из браузерных движков. На данный момент необходимо использовать один из движков: 1. Trident (IE) 2. Gecko (Firefox) 3. WebKit (Safari) |
| Автор: SpaceSpace 8.12.2008, 17:31 | ||
СОГЛАСЕН у тебя есть на примете опен-сорс движки для проведения нагрузки? |
| Автор: Gelis 8.12.2008, 20:14 |
| Есть такой open-source проект http://seleniumhq.org/ Один из подпроектов: Это Selenium Grid, который запускает сразу несколько браузеров на нескольких машинах. Я думаю это то что вам надо. Поддерживаемые браузеры: IE, FireFox and Safari Есть Selenium IDE, которое генерит за вас код теста и если у вас нет на странице AJAX или UploadFile, то созданный автоматом тест можно даже не менять. Если что-то из этого есть, то прийдется попотеть. Для запуска тестов в нескольких браузерах и на нескольких компьютерах возможен только в том случае если они созданы с помощью библиотеки PNUnit (Parallel NUnit) |
| Автор: jonie 11.12.2008, 20:26 |
| http://www.opensta.org/ -- тоже умеет тестировать на нагрузку |
| Автор: SerGreY 16.12.2008, 20:28 |
| Всем спасибо за ответы ! Сейчас смотрю приложение с http://www.opensta.org/ |