public ActionClientBase(IOptions options, IConfiguration configuration, ILogging logging, ITestMetricManager testMetricManager) { _options = options; _configuration = configuration; _logging = logging; _testMetricManager = testMetricManager; }
private void ReportMetrics(ILifetimeScope container) { Console.WriteLine("Metric Report..."); ITestMetricManager manager = container.Resolve <ITestMetricManager>(); ILogging logging = container.Resolve <ILogging>(); var maxRecord = manager .Select((x, i) => new { r = x, index = i }) .OrderBy(x => x.r.Tps).Last(); foreach (TestMetric metric in manager.OrderBy(x => x.Name).ThenBy(x => x.Tps)) { logging.Log(() => $"{metric}, {(maxRecord.r.Tps == metric.Tps ? "Max" : string.Empty)}"); } ByTestName(manager, logging); ByBatchSize(manager, logging); }
private void ByBatchSize(ITestMetricManager manager, ILogging logging) { logging.Log(); logging.Log(() => "By batch size..."); var tests = manager .GroupBy(x => x.BatchSize); foreach (var test in tests) { logging.Log(); logging.Log(() => $"Batch Size={test.Key}"); var subTests = manager .Where(x => x.BatchSize == test.Key) .OrderBy(x => x.Tps); foreach (TestMetric metric in subTests) { logging.Log(() => metric.ToString()); } } }
public DataTableAction(IOptions options, IConfiguration configuration, ILogging logging, ITestMetricManager testMetricManager) : base(options, configuration, logging, testMetricManager) { ClientProcess = (monitor, clientNumber, token) => InternalClientProcess(monitor, clientNumber, token); }
public StoredProcedureBulkCopy(IOptions options, IConfiguration configuration, ILogging logging, ITestMetricManager testMetricManager) : base(options, configuration, logging, testMetricManager) { ClientProcess = (monitor, clientNumber, token) => InternalClientProcess(monitor, clientNumber, token); }