2012-01-29 12 views
8

prueba que he escrito en C# con selenio WebDriver. ahora necesito probar el rendimiento de la aplicación. utilicé FiddlerCore pero no tiene el tiempo de representación de la página ni el tiempo de contenido dynami (ajax, js y etc.).biblioteca .NET para ejecutar la prueba de rendimiento para la web

¿Alguien conoce una biblioteca como FiddlerCore pero con más funciones como dynatrace Ajax edition o browsermob-proxy para C#?

EDIT 1: No necesito ninguna solución. Quiero probar solo con WebDriver.

Respuesta

0

Cuando planifico una Prueba de rendimiento web de Ajax, prefiero generar una solicitud y analizar la respuesta desde el lado del servidor con el código C#.

Comúnmente, el desafío del rendimiento es probar el diseño de datos, manejar el cliente de simulación multihilo y analizar diferentes situaciones de problemas.

En general, casi todo mi programa Ajax se comunica con ASP.NET MVC/WCF Service con JSON. Puedo construir fácilmente el cliente de simulación JSon. El cliente es un programa de subprocesos múltiples y configura diferentes subprocesos de cantidad para llamar a los servicios de Ajax. Prefiero usar JSon.NET para leer y escribir JSON. JSon.NET es un marco JSON popular para .NET, en Json.CodePlex.com

En el programa de prueba de rendimiento, puede usar Log2NET para registrar el costo de cada operación. Puede analizar el archivo de registro para lo que necesita.

Lo siento por mi inglés.

2

Si tiene Microsoft Visual Studio 2010 Ultimate, puede usar las pruebas de rendimiento web integradas en el producto. También hay una edición de prueba de Visual Studio 2008 que realiza pruebas de rendimiento web. Los resultados de la prueba se pueden almacenar en una base de datos de SQL Server y puede controlar las métricas que desea marcar.

+0

FYI, son las mismas pruebas de rendimiento web en 2008 que en 2010, pero con más funciones en 2010. –

0

Existen algunas herramientas integradas en Visual Studio para probar el rendimiento de una aplicación, pero no son muy buenas. Si es realmente serio acerca de su aplicación, deberá utilizar algunas herramientas profesionales de terceros.

4

He creado performace el uso de pruebas de la siguiente manera BrowserMob
- Descarga lastest BrowserMob: http://bmp.lightbody.net/
- Obtener AutomatedTestter.BrowserMob de https://github.com/AutomatedTester/AutomatedTester.BrowserMob
- Obtener selenio
- Ejecutar siguiente código:

// 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(); 
+1

Esta es la mejor respuesta. –

Cuestiones relacionadas