private void ParseSpecFlowFeatures() { var featuresDir = new DirectoryInfo(@"..\..\Test Features"); var featureFiles = featuresDir.GetFiles("*.feature"); foreach (var fileinfo in featureFiles) { var file = File.ReadLines(fileinfo.FullName); var featureTitle = file .First(x => x.StartsWith(FEATURE_PATTERN)) .Replace(FEATURE_PATTERN, string.Empty).Trim(); var testcases = file .Where(x => x.StartsWith(SCENARIO_PATTERN)) .Select(x => new testcaseresult() { title = x.Replace(SCENARIO_PATTERN, string.Empty).Trim() }); var testsuite = new testsuiteresult() { title = featureTitle, testcases = testcases.ToArray() }; specflowSuites.AddOrUpdate(featureTitle, testsuite, (k, v) => testsuite); } }
internal static void SaveToFile(this testsuiteresult testsuiteresult, string fileName) { using (XmlWriter xmlWriter = XmlWriter.Create(fileName, _xmlWriterSettings)) { Serializer.Serialize(xmlWriter, testsuiteresult); xmlWriter.Flush(); } }
public override void Process(testsuiteresult context) { context.version = AllureConfig.Version; context.start = _started.HasValue ? _started.Value.ToUnixEpochTime() : AllureResultsUtils.TimeStamp; context.name = Name; context.title = Title; context.description = Description; context.labels = Labels; }
public override void Process(testsuiteresult context) { context.stop = _finished.HasValue ? _finished.Value.ToUnixEpochTime() : AllureResultsUtils.TimeStamp; }
public abstract void Process(testsuiteresult context);