public PerformanceResults Initialize() { PerformanceResults perfResults = new PerformanceResults() { Test = test }; Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); resultsProvider.Initialize(); stopwatch.Stop(); perfResults.AvgTimeCost = perfResults.TotalTimeCost = (double)stopwatch.ElapsedMilliseconds / executionNumber; return(perfResults); }
public PerformanceResults Execute() { DatabaseManager dbManager = new DatabaseManager(); IList results = null; PerformanceResults perfResults = new PerformanceResults() { Test = test }; perfResults.Modificators[TestModificator.Tracking] = tracking; perfResults.Modificators[TestModificator.FirstLevelCaching] = contextCaching; Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); for (int i = 0; i < executionNumber; i++) { stopwatch.Stop(); dbManager.RefreshDatabase(); if (!contextCaching) { resultsProvider.Reset(); } stopwatch.Start(); switch (test.Kind) { case TestKind.SelectSimple: results = resultsProvider.GetOrders(); perfResults.ItemsSelected = results.Count; break; case TestKind.SelectWithRelationsLazy: results = resultsProvider.GetCustomerProductsLazy("BERGS"); perfResults.ItemsSelected = results.Count; break; case TestKind.SelectWithRelationsOptimal: results = resultsProvider.GetCustomerProducts("BERGS"); perfResults.ItemsSelected = results.Count; break; case TestKind.ModifySimple: resultsProvider.ModifyCustomers(); perfResults.ItemsSelected = 0; break; case TestKind.ModifyWithRelations: resultsProvider.ModifyOrdersWithRelations(); perfResults.ItemsSelected = 0; break; case TestKind.ModifyHeavy: resultsProvider.ModifyCustomersBunch(); perfResults.ItemsSelected = 0; break; } } stopwatch.Stop(); perfResults.AvgTimeCost = (double)stopwatch.ElapsedMilliseconds / executionNumber; perfResults.TotalTimeCost = stopwatch.ElapsedMilliseconds; return(perfResults); }