protected override void BeginProcessing()
 {
     CheckCmdletParameters();
     
     var dataObject = new ImportExportCmdletBaseDataObject {
         As = As,
         Descending = Descending,
         ExcludeAutomatic = ExcludeAutomatic,
         FilterAll = FilterAll,
         FilterDescriptionContains = FilterDescriptionContains,
         FilterFailed = FilterFailed,
         FilterIdContains = FilterIdContains,
         FilterNameContains = FilterNameContains,
         FilterNone = FilterNone,
         FilterNotTested = FilterNotTested,
         FilterOutAutomaticAndTechnicalResults = FilterOutAutomaticAndTechnicalResults,
         FilterOutAutomaticResults = FilterOutAutomaticResults,
         FilterPassed = FilterPassed,
         FilterPassedWithBadSmell = FilterPassedWithBadSmell,
         Id = Id,
         Name = Name,
         OrderByDateTime = OrderByDateTime,
         OrderByFailRate = OrderByFailRate,
         OrderById = OrderById,
         OrderByName = OrderByName,
         OrderByPassRate = OrderByPassRate,
         OrderByTimeSpent = OrderByTimeSpent,
         Path = Path
     };
     
     string reportFormat = As.ToUpper();
     switch (reportFormat){
         case "XML":
             // 20141114
             // TmxHelper.ExportResultsToXML(dataObject, Path);
             var testResultsExporter = new TestResultsExporter();
             testResultsExporter.ExportResultsToXml(dataObject, Path, TestData.TestSuites, TestData.TestPlatforms);
             break;
         case "JUNIT":
         case "JUNITXML":
             TmxHelper.ExportResultsToJUnitXML(dataObject, Path);
             break;
         case "HTML":
             ExportResultsToHTML(this, Path);
             break;
         case "CSV":
             ExportResultsToCSV(Path);
             break;
         case "TEXT":
             ExportResultsToTEXT(Path);
             break;
         case "ZIP":
             ExportResultsToZIP(Path);
             break;
         default:
             
             break;
     }
     
 }
示例#2
0
        public virtual bool SendTestResults()
        {
            Trace.TraceInformation("SendTestResults().1");

            var testResultsExporter = new TestResultsExporter();

            Trace.TraceInformation("SendTestResults().2");

            var xDoc = testResultsExporter.GetTestResultsAsXdocument(
                new SearchCmdletBaseDataObject {
                FilterAll = true
            },
                TestData.TestSuites,
                TestData.TestPlatforms);

            Trace.TraceInformation("SendTestResults().3");

            var dataObject = new TestResultsDataObject {
                Data = xDoc.ToString()
            };

            Trace.TraceInformation("SendTestResults().4");

            try {
                var url = UrlList.TestResults_Root + "/" + ClientSettings.Instance.CurrentClient.TestRunId + UrlList.TestResultsPostingPoint_forClient_relPath;


                // 20141211
                // TODO: AOP
                Trace.TraceInformation("SendTestResults().5: testRun id = {0}, url = {1}", ClientSettings.Instance.CurrentClient.TestRunId, url);


                var sendingResultsResponse = _restTemplate.PostForMessage(url, dataObject);

                Trace.TraceInformation("SendTestResults().6 sendingResultsResponse is null? {0}", null == sendingResultsResponse);
                // 20150316
                if (null == sendingResultsResponse)
                {
                    throw  new Exception("Failed to send test results.");
                }

                return(HttpStatusCode.Created == sendingResultsResponse.StatusCode);
            }
            catch (RestClientException eSendingTestResults) {
                // TODO: AOP
                Trace.TraceError("SendTestResults()");
                Trace.TraceError(eSendingTestResults.Message);
                throw new SendingTestResultsException("Failed to send test results. " + eSendingTestResults.Message);
            }
        }
示例#3
0
 public virtual bool SendTestResults()
 {
     Trace.TraceInformation("SendTestResults().1");
     
     var testResultsExporter = new TestResultsExporter();
     
     Trace.TraceInformation("SendTestResults().2");
     
     var xDoc = testResultsExporter.GetTestResultsAsXdocument(
                 new SearchCmdletBaseDataObject {
                     FilterAll = true
                 },
                 TestData.TestSuites,
                 TestData.TestPlatforms);
     
     Trace.TraceInformation("SendTestResults().3");
     
     var dataObject = new TestResultsDataObject {
         Data = xDoc.ToString()
     };
     
     Trace.TraceInformation("SendTestResults().4");
     
     try {
         var url = UrlList.TestResults_Root + "/" + ClientSettings.Instance.CurrentClient.TestRunId + UrlList.TestResultsPostingPoint_forClient_relPath;
         
         
         // 20141211
         // TODO: AOP
         Trace.TraceInformation("SendTestResults().5: testRun id = {0}, url = {1}", ClientSettings.Instance.CurrentClient.TestRunId, url);
         
         
         var sendingResultsResponse = _restTemplate.PostForMessage(url, dataObject);
         
         Trace.TraceInformation("SendTestResults().6 sendingResultsResponse is null? {0}", null == sendingResultsResponse);
         // 20150316
         if (null == sendingResultsResponse)
             throw  new Exception("Failed to send test results.");
         
         return HttpStatusCode.Created == sendingResultsResponse.StatusCode;
     }
     catch (RestClientException eSendingTestResults) {
         // TODO: AOP
         Trace.TraceError("SendTestResults()");
         Trace.TraceError(eSendingTestResults.Message);
         throw new SendingTestResultsException("Failed to send test results. " + eSendingTestResults.Message);
     }
 }
示例#4
0
        public void ShouldAcceptWhenPostingNoData()
        {
            var testResultsExporter = new TestResultsExporter();

            testResultsExporter.GetTestResultsAsXdocument(new SearchCmdletBaseDataObject {
                FilterAll = true
            }, new List <ITestSuite>(), new List <ITestPlatform>());

            var dataObject = new TestResultsDataObject {
                Data = string.Empty
            };

            WhenPostingTestResults(dataObject);

            ThenHttpResponseIsCreated();
        }
示例#5
0
        public void ShouldSendThreeTestSuitesWithInnerData()
        {
            var guid   = Guid.NewGuid();
            var suites = GivenOneTestSuiteWithInnerHierarchy("1", "2", "3", guid);

            suites.AddRange(GivenOneTestSuiteWithInnerHierarchy("10", "20", "30", guid));
            suites.AddRange(GivenOneTestSuiteWithInnerHierarchy("100", "200", "300", guid));
            var testResultsExporter = new TestResultsExporter();
            var xDoc = testResultsExporter.GetTestResultsAsXdocument(new SearchCmdletBaseDataObject {
                FilterAll = true,
                OrderById = true
            },
                                                                     suites,
                                                                     new List <ITestPlatform> {
                new TestPlatform {
                    UniqueId = guid
                }
            });
            var dataObject = new TestResultsDataObject {
                Data = xDoc.ToString()
            };

            Console.WriteLine(xDoc.ToString());

            WhenPostingTestResults(dataObject);

            ThenHttpResponseIsCreated();
            Xunit.Assert.Equal(suites[0].Id, _testRun.TestSuites[0].Id);
            Xunit.Assert.Equal(suites[0].TestScenarios[0].Id, _testRun.TestSuites[0].TestScenarios[0].Id);
            Xunit.Assert.Equal(suites[0].TestScenarios[0].TestResults[0].Id, _testRun.TestSuites[0].TestScenarios[0].TestResults[0].Id);

            Xunit.Assert.Equal(suites[1].Id, _testRun.TestSuites[1].Id);
            Xunit.Assert.Equal(suites[1].TestScenarios[0].Id, _testRun.TestSuites[1].TestScenarios[0].Id);
            Xunit.Assert.Equal(suites[1].TestScenarios[0].TestResults[0].Id, _testRun.TestSuites[1].TestScenarios[0].TestResults[0].Id);

            Xunit.Assert.Equal(suites[2].Id, _testRun.TestSuites[2].Id);
            Xunit.Assert.Equal(suites[2].TestScenarios[0].Id, _testRun.TestSuites[2].TestScenarios[0].Id);
            Xunit.Assert.Equal(suites[2].TestScenarios[0].TestResults[0].Id, _testRun.TestSuites[2].TestScenarios[0].TestResults[0].Id);
        }
        XDocument GivenExportedTestResultsWithDuplicates()
        {
            var listPlatforms = new List <ITestPlatform> {
                new TestPlatform {
                    Id = "1", Name = "p1"
                },
                new TestPlatform {
                    Id = "2", Name = "p2"
                }
            };
            var listSuites = new List <ITestSuite> {
                AddTestSuiteWithTwoScenarios(listPlatforms[0]),
                AddTestSuiteWithTwoScenarios(listPlatforms[1])
            };
            var testResultsExporter = new TestResultsExporter();

            return(testResultsExporter.GetTestResultsAsXdocument(
                       new SearchCmdletBaseDataObject {
                FilterAll = true
            },
                       listSuites,
                       listPlatforms));
        }
示例#7
0
        public void ShouldSendOneTestSuiteWithInnerData()
        {
            var testPlatform        = new TestPlatform();
            var suites              = GivenOneTestSuiteWithInnerHierarchy("1", "2", "3", testPlatform.UniqueId);
            var testResultsExporter = new TestResultsExporter();
            var xDoc = testResultsExporter.GetTestResultsAsXdocument(new SearchCmdletBaseDataObject {
                FilterAll = true,
                OrderById = true
            },
                                                                     suites,
                                                                     new List <ITestPlatform> {
                testPlatform
            });
            var dataObject = new TestResultsDataObject {
                Data = xDoc.ToString()
            };

            WhenPostingTestResults(dataObject);

            ThenHttpResponseIsCreated();
            Xunit.Assert.Equal(suites[0].Id, _testRun.TestSuites[0].Id);
            Xunit.Assert.Equal(suites[0].TestScenarios[0].Id, _testRun.TestSuites[0].TestScenarios[0].Id);
            Xunit.Assert.Equal(suites[0].TestScenarios[0].TestResults[0].Id, _testRun.TestSuites[0].TestScenarios[0].TestResults[0].Id);
        }
示例#8
0
        XElement GetElementWithTestResults(IOrderedEnumerable <ITestSuite> suites, IOrderedEnumerable <ITestScenario> scenarios, IOrderedEnumerable <ITestResult> testResults)
        {
            var testResultsExporter = new TestResultsExporter();

            return(testResultsExporter.CreateSuitesXElementWithParameters(suites, scenarios, testResults, (new XMLElementsNativeStruct())));
        }
        protected override void BeginProcessing()
        {
            CheckCmdletParameters();

            var cmdlet = new SearchCmdletBase {FilterAll = true};

            // 20140720
//            var dataObject = new SearchCmdletBaseDataObject {
//                FilterAll = true
//            };
            // 20140721
            var dataObject = new SearchCmdletBaseDataObject {
                Descending = cmdlet.Descending,
                FilterAll = cmdlet.FilterAll,
                FilterDescriptionContains = cmdlet.FilterDescriptionContains,
                FilterFailed = cmdlet.FilterFailed,
                FilterIdContains = cmdlet.FilterIdContains,
                FilterNameContains = cmdlet.FilterNameContains,
                FilterNone = cmdlet.FilterNone,
                FilterNotTested = cmdlet.FilterNotTested,
                FilterOutAutomaticAndTechnicalResults = cmdlet.FilterOutAutomaticAndTechnicalResults,
                FilterOutAutomaticResults = cmdlet.FilterOutAutomaticResults,
                FilterPassed = cmdlet.FilterPassed,
                FilterPassedWithBadSmell = cmdlet.FilterPassedWithBadSmell,
                Id = cmdlet.Id,
                Name = cmdlet.Name,
                OrderByDateTime = cmdlet.OrderByDateTime,
                OrderByFailRate = cmdlet.OrderByFailRate,
                OrderById = cmdlet.OrderById,
                OrderByName = cmdlet.OrderByName,
                OrderByPassRate = cmdlet.OrderByPassRate,
                OrderByTimeSpent = cmdlet.OrderByTimeSpent
            };
            // IOrderedEnumerable<TestSuite> suites =
            IOrderedEnumerable<ITestSuite> suites = TmxHelper.SearchForSuites(dataObject);
            
cmdlet.FilterNone = true;
            
            IOrderedEnumerable<ITestScenario> scenarios = TmxHelper.SearchForScenarios(dataObject);

            //cmdlet.FilterAll = false;
            //cmdlet.FilterPassedWithBadSmell = true;
//            cmdlet.FilterNone = true;
            
            IOrderedEnumerable<ITestResult> testResults = TmxHelper.SearchForTestResults(dataObject);
            
            // 20141124
//            XElement suitesElement = 
//                TmxHelper.CreateSuitesXElementWithParameters(
//                    suites,
//                    scenarios,
//                    testResults,
//                    (new XMLElementsNativeStruct()));
            
            var testResultsExporter = new TestResultsExporter();
            var suitesElement = testResultsExporter.CreateSuitesXElementWithParameters(
                suites,
                scenarios,
                testResults,
                (new XMLElementsNativeStruct()));
            
            WriteObject(this, suitesElement);

        }
示例#10
0
        protected override void BeginProcessing()
        {
            CheckCmdletParameters();

            var cmdlet = new SearchCmdletBase {
                FilterAll = true
            };

            // 20140720
//            var dataObject = new SearchCmdletBaseDataObject {
//                FilterAll = true
//            };
            // 20140721
            var dataObject = new SearchCmdletBaseDataObject {
                Descending = cmdlet.Descending,
                FilterAll  = cmdlet.FilterAll,
                FilterDescriptionContains = cmdlet.FilterDescriptionContains,
                FilterFailed       = cmdlet.FilterFailed,
                FilterIdContains   = cmdlet.FilterIdContains,
                FilterNameContains = cmdlet.FilterNameContains,
                FilterNone         = cmdlet.FilterNone,
                FilterNotTested    = cmdlet.FilterNotTested,
                FilterOutAutomaticAndTechnicalResults = cmdlet.FilterOutAutomaticAndTechnicalResults,
                FilterOutAutomaticResults             = cmdlet.FilterOutAutomaticResults,
                FilterPassed             = cmdlet.FilterPassed,
                FilterPassedWithBadSmell = cmdlet.FilterPassedWithBadSmell,
                Id               = cmdlet.Id,
                Name             = cmdlet.Name,
                OrderByDateTime  = cmdlet.OrderByDateTime,
                OrderByFailRate  = cmdlet.OrderByFailRate,
                OrderById        = cmdlet.OrderById,
                OrderByName      = cmdlet.OrderByName,
                OrderByPassRate  = cmdlet.OrderByPassRate,
                OrderByTimeSpent = cmdlet.OrderByTimeSpent
            };
            // IOrderedEnumerable<TestSuite> suites =
            IOrderedEnumerable <ITestSuite> suites = TmxHelper.SearchForSuites(dataObject);

            cmdlet.FilterNone = true;

            IOrderedEnumerable <ITestScenario> scenarios = TmxHelper.SearchForScenarios(dataObject);

            //cmdlet.FilterAll = false;
            //cmdlet.FilterPassedWithBadSmell = true;
//            cmdlet.FilterNone = true;

            IOrderedEnumerable <ITestResult> testResults = TmxHelper.SearchForTestResults(dataObject);

            // 20141124
//            XElement suitesElement =
//                TmxHelper.CreateSuitesXElementWithParameters(
//                    suites,
//                    scenarios,
//                    testResults,
//                    (new XMLElementsNativeStruct()));

            var testResultsExporter = new TestResultsExporter();
            var suitesElement       = testResultsExporter.CreateSuitesXElementWithParameters(
                suites,
                scenarios,
                testResults,
                (new XMLElementsNativeStruct()));

            WriteObject(this, suitesElement);
        }
示例#11
0
 XDocument GivenExportedTestResultsWithDuplicates()
 {
     var listPlatforms = new List<ITestPlatform> {
         new TestPlatform { Id = "1", Name = "p1" },
         new TestPlatform { Id = "2", Name = "p2" }
     };
     var listSuites = new List<ITestSuite> {
         AddTestSuiteWithTwoScenarios(listPlatforms[0]),
         AddTestSuiteWithTwoScenarios(listPlatforms[1])
         };
     var testResultsExporter = new TestResultsExporter();
     return testResultsExporter.GetTestResultsAsXdocument(
         new SearchCmdletBaseDataObject {
             FilterAll = true
         },
         listSuites,
         listPlatforms);
 }
示例#12
0
        protected override void BeginProcessing()
        {
            CheckCmdletParameters();

            var dataObject = new ImportExportCmdletBaseDataObject {
                As                                    = As,
                Descending                            = Descending,
                ExcludeAutomatic                      = ExcludeAutomatic,
                FilterAll                             = FilterAll,
                FilterDescriptionContains             = FilterDescriptionContains,
                FilterFailed                          = FilterFailed,
                FilterIdContains                      = FilterIdContains,
                FilterNameContains                    = FilterNameContains,
                FilterNone                            = FilterNone,
                FilterNotTested                       = FilterNotTested,
                FilterOutAutomaticAndTechnicalResults = FilterOutAutomaticAndTechnicalResults,
                FilterOutAutomaticResults             = FilterOutAutomaticResults,
                FilterPassed                          = FilterPassed,
                FilterPassedWithBadSmell              = FilterPassedWithBadSmell,
                Id                                    = Id,
                Name                                  = Name,
                OrderByDateTime                       = OrderByDateTime,
                OrderByFailRate                       = OrderByFailRate,
                OrderById                             = OrderById,
                OrderByName                           = OrderByName,
                OrderByPassRate                       = OrderByPassRate,
                OrderByTimeSpent                      = OrderByTimeSpent,
                Path                                  = Path
            };

            string reportFormat = As.ToUpper();

            switch (reportFormat)
            {
            case "XML":
                // 20141114
                // TmxHelper.ExportResultsToXML(dataObject, Path);
                var testResultsExporter = new TestResultsExporter();
                testResultsExporter.ExportResultsToXml(dataObject, Path, TestData.TestSuites, TestData.TestPlatforms);
                break;

            case "JUNIT":
            case "JUNITXML":
                TmxHelper.ExportResultsToJUnitXML(dataObject, Path);
                break;

            case "HTML":
                ExportResultsToHTML(this, Path);
                break;

            case "CSV":
                ExportResultsToCSV(Path);
                break;

            case "TEXT":
                ExportResultsToTEXT(Path);
                break;

            case "ZIP":
                ExportResultsToZIP(Path);
                break;

            default:

                break;
            }
        }