.NET библиотека для запуска теста производительности для веб - PullRequest
8 голосов
/ 29 января 2012

У меня есть тест, написанный на C # с Selenium Webdriver.Теперь мне нужно проверить производительность приложения.я использовал FiddlerCore, но у него нет времени рендеринга страницы или времени динамического содержимого (ajax, js и т.C #?

РЕДАКТИРОВАТЬ 1: Мне не нужно никаких решений.Я хочу протестировать только с WebDriver.

Ответы [ 4 ]

4 голосов
/ 20 августа 2013

Я создал тест производительности, используя BrowserMob следующим образом
- Загрузить последнюю версию BrowserMob: http://bmp.lightbody.net/
- Получите AutomatedTestter.BrowserMob от https://github.com/AutomatedTester/AutomatedTester.BrowserMob
- Получить селен
- Запустите следующий код:

 // Supply the path to the Browsermob Proxy batch file
        Server server =
            new Server(
                @"path\to\browsermob-proxy.bat");
        server.Start();

        Client client = server.CreateProxy();
        client.RemapHost("host", "ip address");
        client.NewHar("google");

        var seleniumProxy = new Proxy { HttpProxy = client.SeleniumProxy };
        var profile = new FirefoxProfile();
        profile.SetProxyPreferences(seleniumProxy);
        // Navigate to the page to retrieve performance stats for
        var driver = new FirefoxDriver(profile);
        driver.Navigate().GoToUrl("http://google.com.vn");


        // Get the performance stats
        HarResult harData = client.GetHar();

        AutomatedTester.BrowserMob.HAR.Log log = harData.Log;
        AutomatedTester.BrowserMob.HAR.Entry[] entries = log.Entries;
        foreach (var entry in entries)
        {
            AutomatedTester.BrowserMob.HAR.Request request = entry.Request;
            var url = request.Url;
            var time = entry.Time;
            Console.WriteLine("Url: " + url + " - Time: " + time);
        }



        driver.Quit();
        client.Close();
        server.Stop();
2 голосов
/ 13 марта 2012

Если у вас есть Microsoft Visual Studio 2010 Ultimate, вы можете использовать встроенные в продукт веб-тесты производительности.Существует также тестовая версия Visual Studio 2008, которая выполняет веб-тесты производительности.Результаты теста могут быть сохранены в базе данных SQL Server, и вы можете контролировать показатели, которые вы хотите изменить.

0 голосов
/ 13 апреля 2012

В Visual Studio есть несколько встроенных инструментов для тестирования производительности приложения, но они не очень хороши.Если вы действительно серьезно относитесь к своему приложению, вам придется использовать сторонние профессиональные инструменты.

0 голосов
/ 30 января 2012

Когда я планирую веб-тест производительности Ajax, я предпочитаю генерировать запрос и анализировать ответ со стороны сервера с помощью кода C #.

Обычно проблема производительности заключается в тестировании проектирования данных, обработке многопоточного моделированияклиент и анализ различных проблемных ситуаций.

Как правило, почти все мои Ajax-программы взаимодействуют с ASP.NET MVC / WCF Service с JSON.Я могу легко построить клиент моделирования JSon.Клиент является многопоточной программой и настраивает поток с различным количеством для вызова служб Ajax.Я предпочитаю использовать JSon.NET для чтения и записи JSON.JSon.NET - это популярная среда JSON для .NET, по адресу Json.CodePlex.com

. В программе тестирования производительности вы можете использовать Log2NET для записи стоимости каждой операции.Вы можете проанализировать файл журнала на предмет того, что вам нужно.

Извините за мой английский.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...