private bool LoadSuiteObjectFromXml() { try { if (SuiteXml == null) { return(false); } SuiteObject = new TestNGTestSuite(); SuiteObject.Name = SuiteXml.DocumentElement.GetAttribute("name").ToString(); SuiteObject.Parameters = GetTestParametersFromXmlElement(SuiteXml.DocumentElement); SuiteObject.Listeners = GetSuiteListners(SuiteXml.DocumentElement); SuiteObject.Tests = new List <TestNGTest>(); foreach (XmlElement xmlTest in SuiteXml.GetElementsByTagName("test")) { TestNGTest ngTest = new TestNGTest { Name = xmlTest.Attributes.GetNamedItem("name").Value, Parameters = GetTestParametersFromXmlElement(xmlTest), Classes = GetTestClassesFromXmlElement(xmlTest), }; SuiteObject.Tests.Add(ngTest); } return(true); } catch (Exception ex) { LoadError = string.Format("Failed to load the TestNG Suite Object from XML due to the Error: '{0}'", ex.Message); return(false); } }
private bool LoadSuiteReportObjectFromXml() { try { if (ReportXml == null) { return(false); } //General counters Int32.TryParse(ReportXml.DocumentElement.GetAttribute("passed").ToString(), out PassedTestMethodsNum); Int32.TryParse(ReportXml.DocumentElement.GetAttribute("failed").ToString(), out FailedTestMethodsNum); Int32.TryParse(ReportXml.DocumentElement.GetAttribute("skipped").ToString(), out SkippedTestMethodsNum); Int32.TryParse(ReportXml.DocumentElement.GetAttribute("ignored").ToString(), out IgnoredTestMethodsNum); Int32.TryParse(ReportXml.DocumentElement.GetAttribute("total").ToString(), out TotalTestMethodsNum); //Executed Suites details ReportSuites = new List <TestNGTestSuite>(); foreach (XmlElement xmlReportSuite in ReportXml.GetElementsByTagName("suite")) { TestNGTestSuite ngSuite = new TestNGTestSuite(); ngSuite.Name = xmlReportSuite.GetAttribute("name").ToString(); ngSuite.Parameters = GetTestParametersFromXmlElement(xmlReportSuite); DateTime.TryParse(xmlReportSuite.GetAttribute("started-at").ToString(), out ngSuite.ExecutionStartTime); DateTime.TryParse(xmlReportSuite.GetAttribute("finished-at").ToString(), out ngSuite.ExecutionEndTime); Int32.TryParse(xmlReportSuite.GetAttribute("duration-ms").ToString(), out ngSuite.ExecutionDurationMS); ngSuite.Tests = new List <TestNGTest>(); foreach (XmlElement xmlReportTest in xmlReportSuite.GetElementsByTagName("test")) { TestNGTest ngTest = new TestNGTest(); ngTest.Name = xmlReportTest.GetAttribute("name").ToString(); DateTime.TryParse(xmlReportTest.GetAttribute("started-at").ToString(), out ngTest.ExecutionStartTime); DateTime.TryParse(xmlReportTest.GetAttribute("finished-at").ToString(), out ngTest.ExecutionEndTime); Int32.TryParse(xmlReportTest.GetAttribute("duration-ms").ToString(), out ngTest.ExecutionDurationMS); ngTest.Parameters = GetTestParametersFromXmlElement(xmlReportTest); ngTest.Classes = GetTestClassesFromXmlElement(xmlReportTest); ngSuite.Tests.Add(ngTest); } ReportSuites.Add(ngSuite); } return(true); } catch (Exception ex) { LoadError = string.Format("Failed to load the TestNG Suite Report Object from XML due to the Error: '{0}'", ex.Message); return(false); } }