public static void ParseFiles(AbParseCommandLineParser cl) { var path = Path.GetDirectoryName(cl.InputFilePath); if (path == string.Empty) path = ".\\"; var fileName = Path.GetFileName(cl.InputFilePath); var files = Directory.GetFiles(path,fileName); var testInfoList = new List<TestInfo>(); foreach (var file in files) { var testInfo = new TestInfo(); var lines = File.ReadAllLines(file); testInfo.RequestName = Path.GetFileNameWithoutExtension(file); foreach (var line in lines) { //Requests per second: 174.14 [#/sec] (mean) if (line.StartsWith("Requests per")) { var req = StringUtils.ExtractString(line, ":", "["); req = req.Trim(); decimal rps = 0; decimal.TryParse(req, NumberStyles.Any, NumberFormatInfo.InvariantInfo, out rps); testInfo.RequestsPerSecond = rps; } } testInfoList.Add(testInfo); } WriteOutput(testInfoList,cl); }
public static void ParseFiles(AbParseCommandLineParser cl) { var path = Path.GetDirectoryName(cl.InputFilePath); if (path == string.Empty) path = ".\\"; var fileName = Path.GetFileName(cl.InputFilePath); var files = Directory.GetFiles(path,fileName); var testInfoList = new List<TestInfo>(); var nfi = new NumberFormatInfo { CurrencyDecimalSeparator = "." }; foreach (var file in files) { var testInfo = new TestInfo(); var lines = File.ReadAllLines(file); testInfo.RequestName = Path.GetFileNameWithoutExtension(file); foreach (var line in lines) { if (string.IsNullOrEmpty(line)) continue; //Requests per second: 174.14 [#/sec] (mean) if (line.StartsWith("Requests per")) { var req = StringUtils.ExtractString(line, ":", "["); req = req.Trim(); decimal rps = 0; decimal.TryParse(req, NumberStyles.Currency, nfi, out rps); testInfo.RequestsPerSecond = rps; } if (line.StartsWith(" (Connect")) { var req = StringUtils.ExtractString(line, "(", ")",returnDelimiters: true); testInfo.FailedRequests = req; } } testInfoList.Add(testInfo); } WriteOutput(testInfoList,cl); }