Exemplo n.º 1
0
        public void File_given___correct_counts(string trxFile, int expectedTestCount, int expectedFailureCount)
        {
            XElement trx    = XElement.Load(trxFile);
            var      parser = new TrxTestResultXmlParser(trx);

            parser.Parse();
            Models.TrxTest testData = parser.Result;

            var converter = new Trx2JunitTestConverter(testData);

            converter.Convert();

            Models.JUnitTest junitTest = converter.Result;
            var sut = new JUnitTestResultXmlBuilder(junitTest);

            sut.Build();

            XElement testsuite = sut.Result.Elements("testsuite").First();

            Assert.Multiple(() =>
            {
                Assert.AreEqual(expectedTestCount, int.Parse(testsuite.Attribute("tests").Value), nameof(expectedTestCount));
                Assert.AreEqual(expectedFailureCount, int.Parse(testsuite.Attribute("failures").Value), nameof(expectedFailureCount));
            });
        }
Exemplo n.º 2
0
    public void Testcase_status_attribute_set()
    {
        XElement trx    = XElement.Load("./data/trx/nunit.trx");
        var      parser = new TrxTestResultXmlParser(trx);

        parser.Parse();
        TrxTest testData = parser.Result;

        var converter = new Trx2JunitTestConverter(testData);

        converter.Convert();

        JUnitTest junitTest = converter.Result;
        var       sut       = new JUnitTestResultXmlBuilder(junitTest);

        sut.Build();

        XElement[] testCases = sut.Result.Descendants("testcase").ToArray();

        Assert.Multiple(() =>
        {
            Assert.AreEqual(3, testCases.Length);
            Assert.AreEqual("1", testCases[0].Attribute("status").Value);
            Assert.AreEqual("0", testCases[1].Attribute("status").Value);
            Assert.AreEqual("1", testCases[2].Attribute("status").Value);
        });
    }
Exemplo n.º 3
0
        public Default()
        {
            AddTestResult("Class1", "Method1", TrxOutcome.NotExecuted, new TimeSpan(0, 0, 1));
            AddTestResult("Class1", "Method2", TrxOutcome.Failed, new TimeSpan(0, 0, 3));
            AddTestResult("Class1", "Method3", TrxOutcome.Failed, new TimeSpan(0, 0, 2));
            AddTestResult("Class2", "Method1", TrxOutcome.Passed, new TimeSpan(0, 0, 3));
            AddTestResult("Class3", "Method1", TrxOutcome.Failed, new TimeSpan(0, 0, 8));
            AddTestResult("Class3", "Method2", TrxOutcome.Passed, new TimeSpan(0, 0, 12));
            AddTestResult("Class4", "Method1", TrxOutcome.Completed, new TimeSpan(0, 0, 1));
            AddTestResult("Class4", "Method2", TrxOutcome.Warning, new TimeSpan(0, 0, 1));

            var converter = new Trx2JunitTestConverter(_trxTest);

            converter.Convert();
            _junitTest = converter.Result;
            //-----------------------------------------------------------------
            void AddTestResult(string testClass, string testMethod, TrxOutcome testResult, TimeSpan?testDuration)
            {
                var testGuid     = Guid.NewGuid();
                var testExecGuid = Guid.NewGuid();

                _trxTest.TestDefinitions.Add(
                    new TrxTestDefinition
                {
                    Id          = testGuid,
                    TestClass   = testClass,
                    TestMethod  = testMethod,
                    ExecutionId = testExecGuid,
                });

                _trxTest.UnitTestResults.Add(
                    new TrxUnitTestResult
                {
                    ExecutionId  = testExecGuid,
                    TestId       = testGuid,
                    TestName     = testMethod,
                    Outcome      = testResult,
                    Duration     = testDuration,
                    StartTime    = DateTime.Now,
                    StackTrace   = "",
                    Message      = "",
                    ComputerName = Environment.MachineName
                });
            }
        }
Exemplo n.º 4
0
        public DataDriven()
        {
            var testGuid      = Guid.NewGuid();
            var testExecGuids = Enumerable
                                .Range(0, 4)
                                .Select(_ => Guid.NewGuid())
                                .ToList();

            _trxTest.TestDefinitions.Add(
                new TrxTestDefinition
            {
                Id          = testGuid,
                TestClass   = "Class1",
                TestMethod  = "Method1",
                ExecutionId = testExecGuids[0]
            });

            for (int i = 0; i < testExecGuids.Count; ++i)
            {
                _trxTest.UnitTestResults.Add(
                    new TrxUnitTestResult
                {
                    ExecutionId  = testExecGuids[i],
                    TestId       = testGuid,
                    TestName     = "Method1",
                    Outcome      = i != 0 ? TrxOutcome.Passed : TrxOutcome.Failed,
                    Duration     = new TimeSpan(0, 0, 1),
                    StartTime    = DateTime.Now,
                    StackTrace   = "",
                    Message      = "",
                    ComputerName = Environment.MachineName
                });
            }

            var converter = new Trx2JunitTestConverter(_trxTest);

            converter.Convert();
            _junitTest = converter.Result;
        }
Exemplo n.º 5
0
        public void TrxUnitTestResult_with_stdout___system_out_set()
        {
            XElement trx    = XElement.Load("./data/trx/nunit-with-stdout.trx");
            var      parser = new TrxTestResultXmlParser(trx);

            parser.Parse();
            Models.TrxTest testData = parser.Result;

            var converter = new Trx2JunitTestConverter(testData);

            converter.Convert();

            Models.JUnitTest junitTest = converter.Result;
            var sut = new JUnitTestResultXmlBuilder(junitTest);

            sut.Build();

            XElement testsuite = sut.Result.Elements("testsuite").First();
            XElement systemOut = testsuite.Element("system-out");

            Assert.IsNotNull(systemOut, nameof(systemOut));
            Assert.AreEqual("message written to stdout", systemOut.Value);
        }
Exemplo n.º 6
0
    public void TrxUnitTestResult_with_stderr___system_err_set_by_testcase()
    {
        XElement trx    = XElement.Load("./data/trx/nunit-with-stderr.trx");
        var      parser = new TrxTestResultXmlParser(trx);

        parser.Parse();
        TrxTest testData = parser.Result;

        var converter = new Trx2JunitTestConverter(testData);

        converter.Convert();

        JUnitTest junitTest = converter.Result;
        var       sut       = new JUnitTestResultXmlBuilder(junitTest);

        sut.Build();

        XElement testsuite = sut.Result.Elements("testsuite").First();
        XElement testcase  = testsuite.Elements("testcase").First();
        XElement systemErr = testcase.Element("system-err");

        Assert.IsNotNull(systemErr, nameof(systemErr));
        Assert.AreEqual("message written to stderr", systemErr.Value);
    }