Пример #1
0
        //[SetUp]
        public void AllureBeforeTest()
        {
            var    nunitTest = TestExecutionContext.CurrentContext.CurrentTest;
            var    x         = TestContext.CurrentContext.Test;
            string suitName  = nunitTest.ClassName.Split('.')[2]; //LykkeAutomationPrivate.Tests.ClientAccount.DeleteClientAccount.DeleteClientAccountTest -> ClientAccount
            var    descr     = nunitTest.Properties.Get("Description")?.ToString() ?? nunitTest.Parent.Properties.Get("Description")?.ToString();

            var testResult = new Allure.Commons.TestResult
            {
                uuid            = nunitTest.Id,
                historyId       = nunitTest.FullName,
                name            = nunitTest.MethodName,
                fullName        = nunitTest.FullName,
                descriptionHtml = descr ?? "",
                parameters      = GetParameters(),
                labels          = new List <Label>
                {
                    Label.Suite(suitName),
                    Label.Thread(),
                    Label.Host(),
                    Label.TestClass(nunitTest.ClassName),
                    Label.TestMethod(nunitTest.MethodName),
                    Label.Package(nunitTest.ClassName.Replace('+', '.')),
                }
            };

            testResult.labels.AddRange(GetCategories());
            Allure.StartTestCase(testResult);
        }
Пример #2
0
        private void AddMissedTest(ITestResult result)
        {
            var testResult = new Allure.Commons.TestResult
            {
                uuid      = result.Test.Id,
                historyId = result.Test.FullName,
                name      = result.Test.MethodName,
                fullName  = result.Test.FullName,
                labels    = new List <Label>
                {
                    Label.Suite(result.Test.ClassName),
                    Label.Thread(),
                    Label.Host(),
                    Label.TestClass(result.Test.ClassName),
                    Label.TestMethod(result.Test.MethodName),
                    Label.Package(result.Test.Fixture?.ToString() ?? result.Test.ClassName)
                },
                status        = GetNunitStatus(result.ResultState),
                statusDetails = new StatusDetails
                {
                    message = result.Message,
                    trace   = result.StackTrace
                }
            };

            Allure.StartTestCase(testResult);
            Allure.StopTestCase(result.Test.Id);
            Allure.WriteTestCase(result.Test.Id);
        }
        public void AfterTest(ITest suite)
        {
            suite = (TestSuite)suite;
            if (suite.HasChildren)
            {
                var ignoredTests =
                    GetAllTests(suite).Where(t => t.RunState == RunState.Ignored || t.RunState == RunState.Skipped);
                foreach (var test in ignoredTests)
                {
                    AllureLifecycle.Instance.UpdateTestContainer(_ignoredContainerId, t => t.children.Add(test.Id));

                    var reason = test.Properties.Get(PropertyNames.SkipReason).ToString();

                    var ignoredTestResult = new TestResult
                    {
                        uuid          = test.Id,
                        name          = test.Name,
                        fullName      = test.FullName,
                        status        = Status.skipped,
                        statusDetails = new StatusDetails
                        {
                            message = test.Name
                        },
                        labels = new List <Label>
                        {
                            Label.Suite(_suiteName),
                            Label.SubSuite(reason),
                            Label.Thread(),
                            Label.Host(),
                            Label.TestClass(test.ClassName),
                            Label.TestMethod(test.MethodName),
                            Label.Package(test.ClassName)
                        }
                    };
                    AllureLifecycle.Instance.StartTestCase(ignoredTestResult);
                    AllureLifecycle.Instance.StopTestCase(ignoredTestResult.uuid);
                    AllureLifecycle.Instance.WriteTestCase(ignoredTestResult.uuid);
                }

                AllureLifecycle.Instance.StopTestContainer(_ignoredContainerId);
                AllureLifecycle.Instance.WriteTestContainer(_ignoredContainerId);
            }
        }
Пример #4
0
        private void StartTestCase()
        {
            _testResultGuid = string.Concat(Guid.NewGuid().ToString(), "-tr-", _test.Id);
            var testResult = new TestResult
            {
                uuid      = _testResultGuid,
                name      = _test.Name,
                historyId = _test.FullName,
                fullName  = _test.FullName,
                labels    = new List <Label>
                {
                    Label.Thread(),
                Label.Host(),
                Label.TestClass(_test.ClassName),
                    Label.TestMethod(_test.MethodName),
                    Label.Package(_test.ClassName)
                }
            };

            AllureLifecycle.StartTestCase(_containerGuid, testResult);
        }
Пример #5
0
 public virtual AllureLifecycle StartTestCase(string containerUuid, TestResult testResult)
 {
     UpdateTestContainer(containerUuid, c => c.children.Add(testResult.uuid));
     return(StartTestCase(testResult));
 }