Пример #1
0
 public static void TestStatus(string status)
 {
     if (status.Equals("Passed"))
     {
         TestCase.Pass("Test Passed");
     }
     else
     {
         var stacktrace   = TestContext.CurrentContext.Result.StackTrace;
         var errorMessage = "<pre>" + TestContext.CurrentContext.Result.Message + "</pre>";
         Reporter.SetTestStatusFail($"<br>{errorMessage}<br>Stack Trace: <br>{stacktrace}<br>");
         TestCase.AddScreenCaptureFromBase64String(UtilityMethods.ScreenCaptureAsBase64String(), "Screenshot on Error:");
     }
 }
Пример #2
0
        public void FinalizeTest(string scenarioTitle, ExtentTest lastStep, string[,] tableData = null, string screenshotBase64 = null)
        {
            if (screenshotBase64 != null)
            {
                lastStep
                .AddScreenCaptureFromBase64String(screenshotBase64, scenarioTitle);
            }

            if (tableData != null)
            {
                var markupTable = MarkupHelper.CreateTable(tableData);

                lastStep
                .Log(Status.Info, markupTable.GetMarkup());
            }
        }
Пример #3
0
        public ExtentTest LogStep(ScenarioContext scenarioContext, string screenshotBase64)
        {
            ExtentTest step = null;

            var scenarioTitle = scenarioContext.ScenarioInfo.Title.Trim();
            var testStatus    = scenarioContext.ScenarioExecutionStatus;
            var stepInfo      = scenarioContext.StepContext.StepInfo;
            var testError     = scenarioContext.TestError;

            switch (stepInfo.StepDefinitionType)
            {
            case StepDefinitionType.Given:
                step = Scenarios[scenarioTitle].CreateNode <Given>(stepInfo.Text);
                break;

            case StepDefinitionType.When:
                step = Scenarios[scenarioTitle].CreateNode <When>(stepInfo.Text);
                break;

            case StepDefinitionType.Then:
                step = Scenarios[scenarioTitle].CreateNode <Then>(stepInfo.Text);
                break;
            }

            //if (testStatus != ScenarioExecutionStatus.OK && !screenshotBase64.IsNullOrEmpty())
            //{
            //    step.AddScreenCaptureFromBase64String(screenshotBase64, scenarioTitle);
            //}

            step.AddScreenCaptureFromBase64String(screenshotBase64, scenarioTitle);

            if (testStatus == ScenarioExecutionStatus.TestError)
            {
                var errorMessage = testError.InnerException != null ? testError.InnerException.Message : testError.Message;
                step.Fail(errorMessage);
            }
            else if (testStatus != ScenarioExecutionStatus.OK)
            {
                step.Skip($"Step execution failed. ScenarioExecutionStatus: {testStatus}");
            }

            return(step);
        }
Пример #4
0
 /// <summary>
 /// Function to capture Screenshot of Failed Screen.
 /// </summary>
 /// <param name="base64ScreenCapture"></param>
 public void AddTestFailureScreenshot(string base64ScreenCapture)
 {
     test.AddScreenCaptureFromBase64String(base64ScreenCapture, "Error Screenshot:");
 }