Beispiel #1
0
        public void Add(UnitTest unitTest, UnitTestResult result)
        {
            var testEntry = new TestEntry()
            {
                ExecutionId = Guid.NewGuid().ToString(),
                TestId      = Guid.NewGuid().ToString(),
                TestListId  = TestListId,
            };

            unitTest.Id           = result.TestId = testEntry.TestId;
            unitTest.Execution.Id = result.ExecutionId = testEntry.ExecutionId;
            result.TestListId     = TestListId;

            Results.Add(result);
            TestDefinitions.Add(unitTest);
            TestEntries.Add(testEntry);
        }
Beispiel #2
0
 /// <summary>
 /// Fills the TestEntries list with TestEntry objects that are created from the PTS return string
 /// </summary>
 /// <returns>List of TestEntry objects: TestEntries</returns>
 public BindingList <TestEntry> convertReturnToTestEntries()
 {
     TestEntries.Clear();
     if (ptsReturn != null)
     {
         //iterate through the list of test names created in this class
         foreach (var test in Tests)
         {
             //add a new TestEntry object for each test in the Tests list. Each of these is returned from PTS in a RE:FI
             TestEntries.Add(new TestEntry(
                                 //Name
                                 test,
                                 //Required
                                 ptsReturn[ptsReturn.IndexOf(test) + 2],
                                 //Result
                                 ptsReturn[ptsReturn.IndexOf(test) + 3]
                                 ));
         }
         return(TestEntries);
     }
     return(null);
 }
Beispiel #3
0
            /// <summary>
            /// Adds the result of a test method into the log.
            /// </summary>
            /// <param name="test">The test metadata.</param>
            /// <param name="storage">The storage value.</param>
            /// <param name="codeBase">The code base value.</param>
            /// <param name="adapterTypeName">The adapter type name.</param>
            /// <param name="className">The class name.</param>
            /// <param name="testListName">The test list name.</param>
            /// <param name="computerName">The computer name.</param>
            /// <param name="startTime">The start time.</param>
            /// <param name="endTime">The end time.</param>
            /// <param name="outcome">The outcome.</param>
            public void AddTestMethodResult(
                ITestMethod test,
                string storage,
                string codeBase,
                string adapterTypeName,
                string className,
                string testListName,
                string computerName,
                DateTime startTime,
                DateTime endTime,
                TestOutcome outcome)
            {
                if (test == null)
                {
                    throw new ArgumentNullException("test");
                }

                // Friendly name of the test
                string name = test.Name;

                // Generate GUIDs.
                string testId      = Guid.NewGuid().ToString();
                string executionId = Guid.NewGuid().ToString();
                string testListId  = GetTestListGuid(testListName);

                // UnitTest element.
                SimpleXElement unitTest = CreateElement("UnitTest");

                unitTest.SetAttributeValue("name", name);
                unitTest.SetAttributeValue("storage", storage);
                unitTest.SetAttributeValue("id", testId);

                SimpleXElement owners      = CreateElement("Owners");
                SimpleXElement owner       = CreateElement("Owner");
                string         ownerString = test.Owner ?? string.Empty;

                owner.SetAttributeValue("name", ownerString);
                owners.Add(owner);
                unitTest.Add(owners);

                if (!string.IsNullOrEmpty(test.Description))
                {
                    SimpleXElement description = CreateElement("Description");
                    description.SetValue(test.Description);
                    unitTest.Add(description);
                }

                SimpleXElement execution = CreateElement("Execution");

                execution.SetAttributeValue("id", executionId);
                unitTest.Add(execution);

                // TestMethod element.
                SimpleXElement testMethod = CreateElement("TestMethod");

                testMethod.SetAttributeValue("codeBase", codeBase);
                testMethod.SetAttributeValue("adapterTypeName", adapterTypeName);
                testMethod.SetAttributeValue("className", className);
                testMethod.SetAttributeValue("name", name);
                unitTest.Add(testMethod);

                TestDefinitions.Add(unitTest);

                // TestEntry element.
                SimpleXElement testEntry = CreateElement("TestEntry");

                testEntry.SetAttributeValue("testId", testId);
                testEntry.SetAttributeValue("executionId", executionId);
                testEntry.SetAttributeValue("testListId", testListId);
                TestEntries.Add(testEntry);

                // UnitTestResult element.
                SimpleXElement unitTestResult = CreateElement("UnitTestResult");

                unitTestResult.SetAttributeValue("executionId", executionId);
                unitTestResult.SetAttributeValue("testId", testId);
                unitTestResult.SetAttributeValue("testName", name);
                unitTestResult.SetAttributeValue("computerName", computerName);

                TimeSpan duration = endTime.Subtract(startTime);

                unitTestResult.SetAttributeValue("duration", duration.ToString());

                unitTestResult.SetAttributeValue("startTime", ToDateString(startTime));
                unitTestResult.SetAttributeValue("endTime", ToDateString(endTime));
                unitTestResult.SetAttributeValue("testType", UnitTestTestTypeId);
                unitTestResult.SetAttributeValue("outcome", outcome.ToString());
                unitTestResult.SetAttributeValue("testListId", testListId.ToString());

                // Add any pending items
                foreach (SimpleXElement pending in _pendingElements)
                {
                    unitTestResult.Add(pending);
                }
                _pendingElements.Clear();

                Results.Add(unitTestResult);
            }