/// <summary> /// Verifies that a specific Browser doesn't exist. /// </summary> /// <param name="ts">Test step.</param> public static void BrowserNotExist(TestStep ts) { try { var title = WebdriverBrowser.GetTitleFromPartOfTitle(ts.TestData.ContainsValue(ts.TestDataKeyToUse).ToString(), false); BrowserWindow.Locate(title); Result.PassStepOutandSave(ts.TestDataKeyToUse, ts.TestStepNumber, Constants.Verification.VerifyBrowserExist, Constants.Fail, string.Concat(Constants.Verification.BrowserWithTitle, ts.TestData.ContainsValue(ts.TestDataKeyToUse), Constants.Verification.DoesExist), ts.Remarks); } catch (Exception ex) { Result.PassStepOutandSave(ts.TestDataKeyToUse, ts.TestStepNumber, Constants.Verification.VerifyBrowserNotExist, Constants.Pass, string.Concat(Constants.Verification.BrowserWithTitle, ts.TestData.ContainsValue(ts.TestDataKeyToUse), Constants.Verification.DoesExist), ts.Remarks); LogHelper.ErrorLog(ex, Constants.ClassName.Verifications, MethodBase.GetCurrentMethod().Name); } }
/// <summary> /// Launch web browser. /// </summary> /// <param name="testStep">Test step.</param> /// <value>Test step value.</value> /// <returns>True or false.</returns> public static bool LaunchWebDriverBrowser(TestStep testStep) { try { //// Launch browser WebdriverBrowser.Launch(Convert.ToString(testStep.TestData[Convert.ToInt32(testStep.TestDataKeyToUse)])); Result.PassStepOutandSave(testStep.TestDataKeyToUse, testStep.TestStepNumber, "LaunchWebDriverBrowser", Entities.Constants.Pass, "WebDriverBrowser launched sucessfully", testStep.Remarks); return(true); } catch (Exception ex) { Result.PassStepOutandSave(testStep.TestDataKeyToUse, testStep.TestStepNumber, "LaunchWebDriverBrowser", Entities.Constants.Fail, string.Format(Entities.Constants.Messages.DueToException, ex.Message), testStep.Remarks); LogHelper.ErrorLog(ex, Entities.Constants.ClassName.UiActionsClassName, MethodBase.GetCurrentMethod().Name); return(false); } }
public static void MyAssemblyCleanup() { try { Timing.TotalEndTime = DateTime.Now; Timing.Totalduration = Timing.TotalEndTime - Timing.TotalStartTime; Reporting.InsertSummaryDetailsAndFormat(); File.SetAttributes(Reporting.FilePath, FileAttributes.Normal); //// Close any open sessions of the browser at the end of the test run WebdriverBrowser webDriverBrowser = new WebdriverBrowser(); webDriverBrowser.CloseAllWebdriver_Browsers(); //// Email notification for test report EmailNotification emailNotification = new EmailNotification(); emailNotification.SendTestReportMail(); } catch (Exception ex) { LogHelper.ErrorLog(ex, Constants.ClassName.BaseTestClass, MethodBase.GetCurrentMethod().Name); throw; } }
/// <summary> /// Executes test steps. /// </summary> public void Execute() { try { TestSessionId = Guid.NewGuid(); //// Initiliaze test data TestCase.TestDataCount = Constants.Zero; var errorMessage = string.Empty; Data objData = new Data(); if (!objData.InitiliazeTestCaseAndTestData(ref errorMessage)) { Assert.Inconclusive(Constants.Messages.TestInitializationError, errorMessage); } //// Run the test case once for every test data that exist var testCaseCount = TestCase.TestDataCount; for (var testCaseIndex = 1; testCaseIndex <= testCaseCount; testCaseIndex++) { var isSuccess = true; var testStepCount = TestCase.TestStepList.Count; for (var testStepIndex = 0; testStepIndex <= testStepCount - 1; testStepIndex++) { var teststep = new TestStep(); var testStep = teststep; testStep.TestDataKeyToUse = Convert.ToString(testCaseIndex); testStep.Action = TestCase.TestStepList[testStepIndex].Action; testStep.TestData = TestCase.TestStepList[testStepIndex].TestData; testStep.TestStepNumber = TestCase.TestStepList[testStepIndex].TestStepNumber; testStep.UiControl = TestCase.TestStepList[testStepIndex].UiControl; testStep.Verification = TestCase.TestStepList[testStepIndex].Verification; testStep.Remarks = TestCase.TestStepList[testStepIndex].Remarks; WebdriverBrowser objWebdriverBrowser = new WebdriverBrowser(); switch (testStep.Action.ToUpper()) { case Constants.TestStepAction.CloseWebDriverBrowsers: isSuccess = objWebdriverBrowser.CloseAllWebdriver_Browsers(); break; case Constants.TestStepAction.LaunchWebDriverBrowser: isSuccess = UiActions.LaunchWebDriverBrowser(testStep); break; case Constants.TestStepAction.WebDriverEditUIControl: isSuccess = UiActions.WebDriverEditUIControl(testStep); break; case Constants.TestStepAction.WebDriverAlertHandler: isSuccess = UiActions.WebDriverAlertHandler(testStep); break; case Constants.TestStepAction.WebDriverFrameHandler: isSuccess = UiActions.WebDriverFrameHandler(testStep); break; case Constants.TestStepAction.WebDriverSwitchToDefaultFrame: isSuccess = UiActions.WebDriverSwitchToDefaultFrame(testStep); break; case Constants.TestStepAction.WebDriverVerify: isSuccess = UiActions.WebDriverVerify(testStep); break; case Constants.TestStepAction.WebDriverSaveUIControl: isSuccess = UiActions.WebDriverSaveUIControl(testStep); break; case Constants.TestStepAction.WebPaginationIteration: isSuccess = UiActions.WebPaginationIteration(testStep); break; case Constants.TestStepAction.WaitforUI: isSuccess = UiActions.WaitForUI(testStep); break; case Constants.TestStepAction.Sendkeys: isSuccess = UiActions.SendKeys(testStep); break; default: Result.PassStepOutandSave(testStep.TestDataKeyToUse, testStep.TestStepNumber, Constants.TestIterations, Constants.Fail, string.Format(Constants.Messages.NotSupported, testStep.Action), testStep.Remarks); isSuccess = false; break; } if (!isSuccess) { break; } //// Exit if one test step failed } if (!isSuccess && Result.GetTestScriptResult() == Constants.Fail) { //// Some test step failed, raise Assert.Fail after all test data iterations are completed var bounds = Screen.GetBounds(Point.Empty); using (var bitmap = new Bitmap(bounds.Width, bounds.Height)) { using (var objGraphic = Graphics.FromImage(bitmap)) { objGraphic.CopyFromScreen(Point.Empty, Point.Empty, bounds.Size); } bitmap.Save( new StringBuilder() .Append(Reporting.PathString) .Append(Constants.DoubleBackslash) .Append(Path.GetFileNameWithoutExtension(TestCase.Name)) .Append(Constants.Jpg).ToString(), ImageFormat.Jpeg); Hyplink = new StringBuilder() .Append(Constants.Hyperlink) .Append(Reporting.PathString) .Append(Constants.DoubleBackslash) .Append(Path.GetFileNameWithoutExtension(TestCase.Name)) .Append(Constants.Jpg) .Append(@""",""") .Append(Path.GetFileNameWithoutExtension(TestCase.Name)) .Append(@""")").ToString(); } Assert.Fail(Constants.Messages.TestCaseFailedError, Reporting.FilePath); } else { Hyplink = null; } } LogHelper objLogHelper = new LogHelper(); objLogHelper.EventLog( string.Format( Constants.Messages.SuccessfullCompletion, MethodBase.GetCurrentMethod().Name), Constants.ClassName.TestCases, MethodBase.GetCurrentMethod().Name); } catch (Exception ex) { LogHelper.ErrorLog(ex, Constants.ClassName.TestCases, MethodBase.GetCurrentMethod().Name); throw; } }