static void ProcessSeleniumData() { LogMessage($"loading selenium files from: {DATA_FOLDER}"); string[] filePaths = Directory.GetFiles(DATA_FOLDER); //filePaths = filePaths.Take(100).ToArray(); var unprocessedFilenames = _collectorRepository.GetUnprocessedFilenames(filePaths); LogMessage($"unprocessed files count: {unprocessedFilenames.Count()}"); Parallel.For(0, unprocessedFilenames.Length, index => { var fileName = unprocessedFilenames[index]; ProcessFile(fileName, index, DATA_FOLDER); }); if (unprocessedFilenames.Length == 0) { return; } LogMessage($"processing data"); _collectorRepository.ProcessData(); LogMessage("generating selenium test pages"); WebReportGenerator.GenerateSeleniumTestListHtml(_collectorRepository.GetTestStatsList()); LogMessage("generating selenium runs page"); WebReportGenerator.GenerateSeleniumRunsHtml(_collectorRepository.GetLastTestRuns(TestRunType.Selenium2)); }
private static void ProcessSpecflowData() { LogMessage($"loading api/specflow files from: {SPC_DATA_FOLDER}"); string[] fileEntries = Directory.GetFiles(SPC_DATA_FOLDER); var unprocessedFilenames = _collectorRepository.GetUnprocessedFilenames(fileEntries); LogMessage($"unprocessed files count: {unprocessedFilenames.Count()}"); Parallel.For(0, unprocessedFilenames.Length, index => { var fileName = unprocessedFilenames[index]; ProcessFile(fileName, index, SPC_DATA_FOLDER); }); if (unprocessedFilenames.Length == 0) { return; } var testRuns = _collectorRepository.GetLastTestRuns(TestRunType.API) .OrderByDescending(x => x.TestRunMetaData.LastRun) .ToList(); LogMessage($"api test runs count {testRuns.Count}"); WebReportGenerator.GenerateApiRunsHtml(testRuns); testRuns = _collectorRepository.GetLastTestRuns(TestRunType.Specflow) .OrderByDescending(x => x.TestRunMetaData.LastRun) .ToList(); LogMessage($"specflow test runs count {testRuns.Count}"); WebReportGenerator.GenerateSpecflowRunsHtml(testRuns); }
private void ReportBtnClicked(object sender, RoutedEventArgs e) { HTMLReportsConfiguration currentConf = WorkSpace.Instance.Solution.HTMLReportsConfigurationSetList.Where(x => (x.IsSelected == true)).FirstOrDefault(); if (grdExecutionsHistory.CurrentItem == null) { Reporter.ToUser(eUserMsgKey.NoItemWasSelected); return; } if (((RunSetReport)grdExecutionsHistory.CurrentItem).DataRepMethod == ExecutionLoggerConfiguration.DataRepositoryMethod.LiteDB) { var selectedGuid = ((RunSetReport)grdExecutionsHistory.CurrentItem).GUID; WebReportGenerator webReporterRunner = new WebReportGenerator(); webReporterRunner.RunNewHtmlReport(string.Empty, selectedGuid); } else { string runSetFolder = executionLoggerHelper.GetLoggerDirectory(((RunSetReport)grdExecutionsHistory.CurrentItem).LogFolder); string reportsResultFolder = Ginger.Reports.GingerExecutionReport.ExtensionMethods.CreateGingerExecutionReport(new ReportInfo(runSetFolder), false, null, null, false, currentConf.HTMLReportConfigurationMaximalFolderSize); if (reportsResultFolder == string.Empty) { Reporter.ToUser(eUserMsgKey.NoItemWasSelected); return; } else { Process.Start(reportsResultFolder); Process.Start(reportsResultFolder + "\\" + "GingerExecutionReport.html"); } } }
public void TestNewWebReport() { //a selected guid can be send string guidStr = ""; // a selected browser from unix can be run ,with his path string browserPath = "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"; // Will not work on Linux WebReportGenerator webReporterRunner = new WebReportGenerator(browserPath); Assert.IsTrue(webReporterRunner.RunNewHtmlReport(null, null, false).RunnersColl.Count > 0); }
public void CopyWebRep() { //Arrange WebReportGenerator webReportGenerator = new WebReportGenerator(); // webReportGenerator. - check method of WebReportGenerator - no need to run run set, just use LiteDB samples or json data file //Act //Assert }
private void GenerateBFReport(BusinessFlow bf) { try { LiteDbManager dbManager = new LiteDbManager(WorkSpace.Instance.SolutionRepository.ConvertSolutionRelativePath(WorkSpace.Instance.Solution.LoggerConfigurations.CalculatedLoggerFolder)); var result = dbManager.GetRunSetLiteData(); List <LiteDbRunSet> filterData = dbManager.FilterCollection(result, Query.All()); LiteDbRunSet runSetLast = filterData.Last(); //runSetLast._id = new ObjectId(); LiteDbRunner runnerFilter = runSetLast.RunnersColl.Find(r => r.GUID.ToString() == mRunner.Guid.ToString()); //runnerFilter._id = new ObjectId(); //runSetLast.RunnersColl = new List<LiteDbRunner>() { runnerFilter }; LiteDbBusinessFlow bfFilter = runnerFilter.BusinessFlowsColl.Find(b => b.GUID.ToString() == bf.Guid.ToString() && b.StartTimeStamp.ToString() == bf.StartTimeStamp.ToLocalTime().ToString()); if (bfFilter == null) { Reporter.ToUser(eUserMsgKey.BFNotExistInDB); return; } //runnerFilter.RunStatus = bfFilter.RunStatus; //runSetLast.RunStatus = runnerFilter.RunStatus; //runnerFilter.BusinessFlowsColl = new List<LiteDbBusinessFlow>() { bfFilter }; //dbManager.WriteToLiteDb(dbManager.NameInDb<LiteDbRunner>(), new List<LiteDbReportBase>() { runnerFilter }); //dbManager.WriteToLiteDb(dbManager.NameInDb<LiteDbRunSet>(), new List<LiteDbReportBase>() { runSetLast }); WebReportGenerator webReporterRunner = new WebReportGenerator(); webReporterRunner.RunNewHtmlReport(string.Empty, runSetLast._id.ToString(), new WebReportFilter() { Guid = bfFilter.GUID.ToString() }); //var newRSData = dbManager.GetRunSetLiteData(); //newRSData.Delete(runSetLast._id); //var newRunnerData = dbManager.GetRunnerLiteData(); //newRunnerData.Delete(runnerFilter._id); } catch (Exception ex) { } }
private void ProduceLiteDBReportFolder(HTMLReportsConfiguration currentConf) { string reportsResultFolder; WebReportGenerator webReporterRunner = new WebReportGenerator(); string reportName = WorkSpace.Instance.RunsetExecutor.RunSetConfig.Name; if (isHTMLReportFolderNameUsed && !String.IsNullOrEmpty(HTMLReportFolderName)) { reportsResultFolder = Path.Combine(HTMLReportFolderName, "Reports", "Ginger-Web-Client"); } else { reportsResultFolder = Path.Combine(Ginger.Reports.GingerExecutionReport.ExtensionMethods.GetReportDirectory(currentConf.HTMLReportsFolder), "Reports", "Ginger-Web-Client"); } if (!String.IsNullOrEmpty(reportsResultFolder)) { webReporterRunner.RunNewHtmlReport(null, null, true); } string clientAppFolderPath = Path.Combine(WorkSpace.Instance.LocalUserApplicationDataFolderPath, "Reports", "Ginger-Web-Client"); if (isHTMLReportPermanentFolderNameUsed) { if (!Directory.Exists(reportsResultFolder)) { IoHandler.Instance.CopyFolderRec(clientAppFolderPath, reportsResultFolder, true); } else { webReporterRunner.DeleteFoldersData(Path.Combine(reportsResultFolder, "assets", "Execution_Data")); webReporterRunner.DeleteFoldersData(Path.Combine(reportsResultFolder, "assets", "screenshots")); IoHandler.Instance.CopyFolderRec(Path.Combine(clientAppFolderPath, "assets", "Execution_Data"), Path.Combine(reportsResultFolder, "assets", "Execution_Data"), true); IoHandler.Instance.CopyFolderRec(Path.Combine(clientAppFolderPath, "assets", "screenshots"), Path.Combine(reportsResultFolder, "assets", "screenshots"), true); } } else { IoHandler.Instance.CopyFolderRec(clientAppFolderPath, $"{reportsResultFolder}_{reportName}_{DateTime.UtcNow.ToString("yyyymmddhhmmss")}", true); } }
private void ProduceLiteDBReportFolder(HTMLReportsConfiguration currentConf) { string reportsResultFolder; WebReportGenerator webReporterRunner = new WebReportGenerator(); string reportName = WorkSpace.Instance.RunsetExecutor.RunSetConfig.Name; if (isHTMLReportFolderNameUsed && !String.IsNullOrEmpty(HTMLReportFolderName)) { reportsResultFolder = Path.Combine(HTMLReportFolderName, "Reports"); } else { reportsResultFolder = Path.Combine(Ginger.Reports.GingerExecutionReport.ExtensionMethods.GetReportDirectory(currentConf.HTMLReportsFolder), "Reports"); } if (isHTMLReportPermanentFolderNameUsed) { webReporterRunner.RunNewHtmlReport(Path.Combine(reportsResultFolder, "Ginger-Web-Client"), null, null, false); } else { webReporterRunner.RunNewHtmlReport(Path.Combine(reportsResultFolder, $"{reportName}_{DateTime.UtcNow.ToString("yyyymmddhhmmssfff")}"), null, null, false); } }
private static void PrintApiTestTimes() { TestRunViewModel model = _collectorRepository.GetTestRun(TestRunType.API, FlytApplication.BVV, 11563); WebReportGenerator.GenerateApiRunsStatsHtml(model); }