private TestStep CreateTestStep(IMethodCallMessage methodCall, MethodInfo testMethod, Status caseStatus, int index) { var testStep = new TestStep(); var args = methodCall.Args; var paramStr = string.Empty; var paramInfos = testMethod.GetParameters(); if (paramInfos.Any()) { if (methodCall.ArgCount == paramInfos.Length) { for (int i = 0; i < paramInfos.Length; i++) { if (args[i].GetType() == typeof(List <string>)) { paramStr = $"{paramStr}, {paramInfos[i].ParameterType.Name} {paramInfos[i].Name} = '{string.Join(", ", args[i] as List<string>)}'"; } else { paramStr = $"{paramStr}, {paramInfos[i].ParameterType.Name} {paramInfos[i].Name} = '{args[i]}'"; } } } else { foreach (var paramInfo in paramInfos) { paramStr = $"{paramStr}, {paramInfo.ParameterType.Name} {paramInfo.Name}"; } } paramStr = $"({paramStr.Trim(',').Trim()})"; } testStep.SetName($"{testMethod.Name} {paramStr}".Trim()); testStep.SetIndex(index); var stepAttr = testMethod.TestStep(); testStep.SetID(stepAttr.ID); testStep.SetComment(stepAttr.Comment); if (caseStatus != Status.Undefined) { stepAttr.Status = caseStatus; } testStep.SetStatus(stepAttr.Status); return(testStep); }
//public static TestStep EndTestStep(TestCase testCase,TestStep testStep, String testStepName, bool status, DriverContext driverContext) //{ // testStep.SetStepEndTime(new StringHelper().GetFormattedDateTimeNow()); // testStep.SetTestStep(testStepName); // testStep.SetStatus(status); // if (!testCase.GetTestCaseName().StartsWith("API_")) // { // testStep.SetImageContent(driverContext.TakeScreenshot().ToString()); // } // return testStep; //} public static TestStep EndTestStep(TestCase testCase, TestStep testStep, String testStepName, bool status, string imageContent) { testStep.SetStepEndTime(new StringHelper().GetFormattedDateTimeNow()); testStep.SetJiraStepEndTime(new StringHelper().GetFormattedDateTimeNow("jira")); testStep.SetTestStep(testStepName); testStep.SetStatus(status); if (!string.IsNullOrEmpty(imageContent)) { //testStep.SetImageContent(driverContext.TakeScreenshot().ToString()); testStep.SetImageContent(imageContent); } return(testStep); }
public void BTA_513_MP_ForgotPassword() { ProjectBasePage basePages = new ProjectBasePage(driverContext); testCase = new TestCase(TestContext.TestName); listOfTestSteps = new List <TestStep>(); testStep = new TestStep(); string stepName = ""; string stepOutput = ""; bool stepstatus = false; string BTA_DEV_MP_LogPath = MemberPortalData.BTA_DEV_MP_LogPath; try { var MP_ForgotPassword = new MemberPortal_ForgotPassword(DriverContext); var MPortal_LoginPage = new MemberPortal_LoginPage(DriverContext); var CSP_LoginPage = new CSPortal_LoginPage(DriverContext); var CSP_SearchPage = new CSPortal_SearchPage(DriverContext); var CSP_HomePage = new CSPortal_HomePage(DriverContext); var CSP_RegistrationPage = new CSPortal_MemberRegistrationPage(DriverContext); var MP_Profile = new MemberProfile(DriverContext); var member = MP_Profile.GenerateMemberBasicInfo(); var details = MP_Profile.GenerateMemberDetails(); var myAccountPage = new MemberPortal_MyAccountPage(driverContext); var myProfilePage = new MemberPortal_MyProfilePage(driverContext); #region Step1:Launch CSPortal stepName = "Launch Customer Service Portal URL"; testStep = TestStepHelper.StartTestStep(testStep); CSP_LoginPage.LaunchCSPortal(login.Csp_url, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step2:Login As csadmin stepName = "Login As csadmin User"; testStep = TestStepHelper.StartTestStep(testStep); login.UserName = CsPortalData.csadmin; login.Password = CsPortalData.csadmin_password; CSP_LoginPage.LoginCSPortal(login.UserName, login.Password, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step3:Create new member user as per config file,if not existed stepName = "Create new member user as per config file,if not existed"; testStep = TestStepHelper.StartTestStep(testStep); member.FirstName = MemberPortalData.ForgotPasswordTestMember; member.LastName = MemberPortalData.ForgotPasswordTestMember; member.Username = MemberPortalData.ForgotPasswordTestMember; member.Password = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(8); bool isMemberExists = CSP_SearchPage.VerifyMemberExists(member.Username, out stepOutput); testStep.SetOutput(stepOutput); if (!isMemberExists) { CSP_HomePage.NavigateToDashBoardMenu(CSPortal_HomePage.DashBoard.MemberRegistration, out stepOutput); stepstatus = CSP_RegistrationPage.EnterBasicInfo_Details(member.FirstName, member.LastName, member.MiddleName, details.Gender, out stepOutput); stepstatus = CSP_RegistrationPage.EnterContactInfo_Details(member.PrimaryEmailAddress, member.PrimaryPhoneNumber, member.PrimaryPhoneNumber, member.PrimaryPhoneNumber, out stepOutput); stepstatus = CSP_RegistrationPage.EnterLoginCredentials_Details(member.Username, member.Password, out stepOutput); stepstatus = CSP_RegistrationPage.EnterOptIn_Out_Details("DirectMailOptIn", "EmailOptIn", "SmsOptIn", out stepOutput); CSP_RegistrationPage.SaveRegistration(); testStep.SetOutput("Member created successfully with username: "******"WEB")); listOfTestSteps.Add(testStep); #endregion #region Step4:Logout as Csadmin stepName = "Logout from CS Portal User:"******"WEB")); testStep.SetOutput("Logout is Successful as User: "******"Launch Member Portal URL"; testStep = TestStepHelper.StartTestStep(testStep); MPortal_LoginPage.LaunchMemberPortal(login.MemberPortal_url, out string Message); MP_ForgotPassword.GetInitialWordCountFromLogFile(BTA_DEV_MP_LogPath); testStep.SetOutput("Launch Member Portal URL is Successful"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step6:Click on Forgot Password stepName = "Click on Forgot Password"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = MPortal_LoginPage.ClickForgotPassword(); testStep.SetOutput("Clicked on Forgot Password Successfully"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step7:Enter valid user name and click Submit button stepName = "Enter a valid user name and click Submit button"; testStep = TestStepHelper.StartTestStep(testStep); MP_ForgotPassword.EnterUserName(member.Username); MP_ForgotPassword.ClickSubmitButton(); testStep.SetOutput("Entered User name: " + member.Username + " and clicked on Submit button"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step8:Select Email option to receive reset code stepName = "Select Email option to receive reset code"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = MP_ForgotPassword.SelectEmailOption(); testStep.SetOutput("Selected Email Option to receive reset code"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step9:Click on Send my reset code stepName = "Click on Send my reset code"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = MP_ForgotPassword.ClickSendResetCodeButton(); testStep.SetOutput("Clicked on Send my reset code"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step10: Select I already have a reset code option stepName = "Select I already have a reset code option"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = MP_ForgotPassword.SelectAlreadyHaveResetCode(); testStep.SetOutput("Selected I already have a reset code option"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step11:Click on Send my reset code stepName = "Click on Send my reset code"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = MP_ForgotPassword.ClickSendResetCodeButton(); testStep.SetOutput("Clicked on Send my reset code"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step12:Enter the reset code received in the Log stepName = "Enter the reset code received in the Log"; testStep = TestStepHelper.StartTestStep(testStep); MP_ForgotPassword.EnterResetCodeFromLogFile(BTA_DEV_MP_LogPath, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step13:Click on Submit button stepName = "Click on Submit button"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = MP_ForgotPassword.ClickSubmitButton(); testStep.SetOutput("Clicked on Submit button"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step14:Create new Password for Test User stepName = "Create new Passwod for Test User"; testStep = TestStepHelper.StartTestStep(testStep); member.Password = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(8); stepstatus = MP_ForgotPassword.CreateNewPassword(member.Username, member.Password, member.Password, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step15:Return back to login page stepName = "Return back to login page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = MP_ForgotPassword.ReturnToLoginPage(out stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput(stepOutput); listOfTestSteps.Add(testStep); #endregion #region Step16:Login with the newly created Password stepName = "Login with User, User Name: " + member.FirstName + " with newly reset Password: "******"WEB")); testStep.SetOutput(stepName); listOfTestSteps.Add(testStep); #endregion #region Step17:Verify successful navigation to Member Portal home page stepName = "Verify successful navigation to Member Portal home page"; testStep = TestStepHelper.StartTestStep(testStep); testStep.SetOutput(MPortal_LoginPage.VerifyMemberPortalLoginSuccessfulForUser(member.FirstName, member.LastName)); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step18:Navigate to My Profile page stepName = "Navigate to My Profile page"; testStep = TestStepHelper.StartTestStep(testStep); myAccountPage.NavigateToMPDashBoardMenu(MemberPortal_MyAccountPage.MPDashboard.MyProfile, out var Step_Output); var strStatus = Step_Output; testStep.SetStatus(myProfilePage.VerifyMyProfilePage(MemberPortal_MyProfilePage.Sections.MyProfile.ToString(), out Step_Output)); strStatus = strStatus + ". " + Step_Output; testStep.SetOutput(strStatus); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Stept19:Change Password for Test Member to default testStep = TestStepHelper.StartTestStep(testStep); stepName = "Change Password for Test Member to default"; string agen_OldPassword = member.Password; string agent_DefaultPassword = AgentValues.Agentpassword; myProfilePage.ChangePassword(agen_OldPassword, agent_DefaultPassword, agent_DefaultPassword); stepstatus = myProfilePage.VerifySuccessMessage(agen_OldPassword, agent_DefaultPassword, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step20:Logout from Member portal stepName = "Logout from Member Portal"; testStep = TestStepHelper.StartTestStep(testStep); MPortal_LoginPage.LogoutMPPortal(); testStep.SetOutput("Logout from Member Portal is Successful"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion testCase.SetStatus(true); } catch (Exception e) { testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, false, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); testCase.SetStatus(false); testCase.SetErrorMessage(e.Message); testCase.SetImageContent(DriverContext.TakeScreenshot().ToString()); Assert.Fail(); } finally { testCase.SetTestCaseSteps(listOfTestSteps); testCase.SetEndTime(new StringHelper().GetFormattedDateTimeNow()); listOfTestCases.Add(testCase); } }
public TestSuite GetTestSuit(TestSuite ts) { TestSuite Testsuite = null; using (var connection = new NpgsqlConnection("Server=10.4.10.31;Port=5432;Database=qa_automation;User Id=bta_dev;Password=Aut0*13Q;")) { connection.Open(); try { NpgsqlTransaction tran = connection.BeginTransaction(); var str = ts.GetId(); NpgsqlCommand command = new NpgsqlCommand("SELECT * FROM automation.GetTestsSuites_CasesSteps_new('" + str + "');", connection); NpgsqlDataAdapter dataadapter = new NpgsqlDataAdapter(command); DataSet dataset = new DataSet(); DataTable dt = new DataTable(); List <TestCase> TestCaseList = null; List <TestStep> TestStepList = null; dataadapter.Fill(dataset); if (dataset != null && dataset.Tables.Count > 0) { Testsuite = new TestSuite(); var _result = from row in dataset.Tables[0].AsEnumerable() group row by new { ID = row.Field <string>("TestCaseid"), } into TestSuiteCaseStep select new { ID = TestSuiteCaseStep.Key.ID, TestSuiteCaseStep = TestSuiteCaseStep.AsEnumerable() }; TestCaseList = new List <TestCase>(); foreach (var datarow in _result) { var data = datarow.TestSuiteCaseStep.FirstOrDefault(); TestCase TestCase = new TestCase(); Testsuite.SetId(data["TestSuit_id"].ToString()); Testsuite.SetSuiteName(data["TestSuit_Name"].ToString()); Testsuite.SetSuiteStartTime(data["TestSuit_StartTime"].ToString()); Testsuite.SetSuiteEndTime(data["TestSuit_EndTime"].ToString()); Testsuite.SetPassed(Convert.ToInt32(data["TestSuit_TotalPassed"])); Testsuite.SetFailed(Convert.ToInt32(data["TestSuit_TotalFail"])); Testsuite.environmentName = data["TestSuit_Environment"].ToString(); Testsuite.buildVersion = data["Build_Number"].ToString(); Testsuite.ClientID = data["ClientID"].ToString(); Testsuite.ApplicationName = data["Test_AppName"].ToString(); TestCase.SetId(data["TestCaseid"].ToString()); TestCase.SetTestCaseName(data["TestcaseName"].ToString()); TestCase.SetStartTime(data["TestCaseStartTime"].ToString()); TestCase.SetEndTime(data["TestcaseEndTime"].ToString()); TestCase.SetErrorMessage(data["TestCaseErrorMessage"].ToString()); TestCase.SetImageContent(data["imageContent"].ToString()); TestCase.SetStatus(Convert.ToBoolean(data["TestCaseStatus"])); TestStepList = new List <TestStep>(); foreach (var item in datarow.TestSuiteCaseStep) { TestStep TestStep = new TestStep(); TestStep.SetTestStep(item[("TestStep_Name")].ToString()); TestStep.SetStepStartTime(item[("TestStep_StartTime")].ToString()); TestStep.SetStepEndTime(item[("TestStep_EndTime")].ToString()); TestStep.SetOutput(item[("TestStep_Output")].ToString()); TestStep.SetErrorMessage(item[("TestStep_errorMessage")].ToString()); TestStep.SetImageContent(item[("TestStep_imageContent")].ToString()); TestStep.SetStatus(Convert.ToBoolean(item["TestStep_Status"])); TestStepList.Add(TestStep); } TestCase.SetTestCaseSteps(TestStepList); TestCaseList.Add(TestCase); TestStepList = null; } Testsuite.SetListOfTestCases(TestCaseList); } tran.Commit(); } catch (Exception ex) { Console.WriteLine("Message: " + ex.Message); // Log_DataType_Conversion_Error(new StringBuilder( ex.Message)); } finally { connection.Close(); } return(Testsuite); } }
public void BTA141_MP_RegisterMemberAndVerifyPage() { ProjectBasePage basePages = new ProjectBasePage(driverContext); testCase = new TestCase(TestContext.TestName); listOfTestSteps = new List <TestStep>(); testStep = new TestStep(); string stepName = ""; try { #region Object Initialization Login login = new Login(); var MP_LoginPage = new MemberPortal_LoginPage(driverContext); MP_Registration memberData = new MP_Registration(driverContext); MemberPortal_LoginPage loginPage = new MemberPortal_LoginPage(driverContext); MemberPortal_MyAccountPage myAccountPage = new MemberPortal_MyAccountPage(driverContext); MemberPortal_MyProfilePage myProfilePage = new MemberPortal_MyProfilePage(driverContext); MemberPortal_MyWalletPage myWalletPage = new MemberPortal_MyWalletPage(driverContext); MemberPortal_AccountActivityPage accountActivityPage = new MemberPortal_AccountActivityPage(driverContext); #endregion #region Step1:Launch Member Service Portal URL stepName = "Launch Member Service Portal URL"; testStep = TestStepHelper.StartTestStep(testStep); MP_LoginPage.LaunchMemberPortal(login.MemberPortal_url, out string Step_Output); testStep.SetOutput(Step_Output); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step2:Navigate to Member Registration page stepName = "Navigate to Member Registration page "; testStep = TestStepHelper.StartTestStep(testStep); testStep.SetOutput(MP_LoginPage.NavigateToMemberRegistrationPage()); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step3:Create new member stepName = "Create new member"; testStep = TestStepHelper.StartTestStep(testStep); var memberRegistrationPage = new MemberPortal_MemberRegistrationPage(DriverContext); memberRegistrationPage.CreateNewMember(memberData, out Step_Output); testStep.SetOutput(Step_Output); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step4:Verify successful navigation to Member Portal home page stepName = "Verify successful navigation to Member Portal home page"; testStep = TestStepHelper.StartTestStep(testStep); Step_Output = loginPage.VerifyMemberPortalLoginSuccessfulForUser(memberData.FirstName, memberData.LastName); testStep.SetOutput(Step_Output); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step5:Verify My Profile page stepName = "Verify My Profile page"; testStep = TestStepHelper.StartTestStep(testStep); myAccountPage.NavigateToMPDashBoardMenu(MemberPortal_MyAccountPage.MPDashboard.MyProfile, out Step_Output); var strStatus = Step_Output; testStep.SetStatus(myProfilePage.VerifyMyProfilePage(MemberPortal_MyProfilePage.Sections.MyProfile.ToString(), out Step_Output)); strStatus = strStatus + ". " + Step_Output; testStep.SetOutput(strStatus); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step6:Verify My Wallet page stepName = "Verify My Wallet page"; testStep = TestStepHelper.StartTestStep(testStep); myAccountPage.NavigateToMPDashBoardMenu(MemberPortal_MyAccountPage.MPDashboard.MyWallet, out Step_Output); strStatus = Step_Output; testStep.SetStatus(myWalletPage.VerifyMyWalletPage(out Step_Output)); strStatus = strStatus + ". " + Step_Output; testStep.SetOutput(strStatus); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step7:Verify Account Activity page stepName = "Verify Account Activity page"; testStep = TestStepHelper.StartTestStep(testStep); myAccountPage.NavigateToMPDashBoardMenu(MemberPortal_MyAccountPage.MPDashboard.AccountActivity, out Step_Output); strStatus = Step_Output; testStep.SetStatus(accountActivityPage.VerifyAccountActivityPage(out Step_Output)); strStatus = strStatus + ". " + Step_Output; testStep.SetOutput(strStatus); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step8:Logout from member portal stepName = "Logout from Member Portal"; testStep = TestStepHelper.StartTestStep(testStep); loginPage.LogoutMPPortal(); testStep.SetOutput("Logout from Member Portal is Successful"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion testCase.SetStatus(true); } catch (Exception e) { testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, false, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); testCase.SetStatus(false); testCase.SetErrorMessage(e.Message); testCase.SetImageContent(DriverContext.TakeScreenshot().ToString()); Assert.Fail(); } finally { testCase.SetTestCaseSteps(listOfTestSteps); testCase.SetEndTime(new StringHelper().GetFormattedDateTimeNow()); listOfTestCases.Add(testCase); } }
public void BTA_511_MP_Member_Update() { ProjectBasePage basePages = new ProjectBasePage(driverContext); testCase = new TestCase(TestContext.TestName); listOfTestSteps = new List <TestStep>(); testStep = new TestStep(); string stepName = ""; try { #region Object initialization MemberProfile MP_Model = new MemberProfile(DriverContext); var loginPage = new MemberPortal_LoginPage(DriverContext); var myAccountPage = new MemberPortal_MyAccountPage(driverContext); var myProfilePage = new MemberPortal_MyProfilePage(driverContext); #endregion #region Step1: Adding member with CDIS service testStep = TestStepHelper.StartTestStep(testStep); stepName = "Adding member with CDIS service"; Member output = basePages.CreateMemberThroughCDIS(); testStep.SetOutput("Member UserName:"******"; First Name: " + output.FirstName + "; Last Name:" + output.LastName + "; Birth Date: " + output.BirthDate + "; Email Address:" + output.PrimaryEmailAddress + ": end"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("API")); listOfTestSteps.Add(testStep); #endregion #region Generating Test Data to Create new user with loyalty card Member member = MP_Model.GenerateMemberBasicInfo(); MemberDetails details = MP_Model.GenerateMemberDetails(); #endregion #region Step2:Launch Member Portal stepName = "Launch Member Portal URL"; testStep = TestStepHelper.StartTestStep(testStep); loginPage.LaunchMemberPortal(login.MemberPortal_url, out string Output); testStep.SetOutput(Output); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step3: Login As Member stepName = "Login As Member User"; testStep = TestStepHelper.StartTestStep(testStep); login.UserName = output.Username; login.Password = "******"; string MemberLoyaltyNumber = DatabaseUtility.GetLoyaltyID(output.IpCode.ToString()); loginPage.LoginMemberPortal(login.UserName, login.Password, out string Message); testStep.SetOutput(Message); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step4:Navigate to My Profile page stepName = "Navigate to My Profile page"; testStep = TestStepHelper.StartTestStep(testStep); myAccountPage.NavigateToMPDashBoardMenu(MemberPortal_MyAccountPage.MPDashboard.MyProfile, out var Step_Output); var strStatus = Step_Output; testStep.SetStatus(myProfilePage.VerifyMyProfilePage(MemberPortal_MyProfilePage.Sections.MyProfile.ToString(), out Step_Output)); strStatus = strStatus + ". " + Step_Output; testStep.SetOutput(strStatus); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step5:Update Basic Info stepName = "Update Basic Info Details on Member Update Profile page"; testStep = TestStepHelper.StartTestStep(testStep); var stepstatus = myProfilePage.UpdateBasicInfo_Details(member.FirstName, member.LastName, details.Gender, out var stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step6:Update Address stepName = "Update Address Info Details on Member Update Profile page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = myProfilePage.UpdateAddress_Details(details.AddressLineOne, details.AddressLineTwo, details.Country, details.StateOrProvince, details.City, details.ZipOrPostalCode, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step7:Update ContactInfo stepName = "Update Contact Info Details on Member Update Profile page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = myProfilePage.UpdateContactInfo_Details(member.PrimaryEmailAddress, member.PrimaryPhoneNumber, member.PrimaryPhoneNumber, member.PrimaryPhoneNumber, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step8:Select All Opt In/Out Check boxes to Update stepName = "Select All Opt In/Out Check boxes to Update"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = myProfilePage.CommunicationPreferences("DirectMailOptIn", "EmailOptIn", "SmsOptIn", out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step10:Save Update profile and Verify update success stepName = "Save Update profile and Verify update success"; testStep = TestStepHelper.StartTestStep(testStep); myProfilePage.SaveRegistrationAndUpdateSuccess(out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step11: Verify updated First Name and Last Name stepName = "Verify updated First Name and Last Name"; testStep = TestStepHelper.StartTestStep(testStep); loginPage.VerifyMemberPortalLoginSuccessfulForUser(member.FirstName, member.LastName); testStep.SetOutput("Member update successful for First Name: " + member.FirstName + "; and Last Name: " + member.LastName); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step12: Logout from member portal stepName = "Logout from Member Portal"; testStep = TestStepHelper.StartTestStep(testStep); loginPage.LogoutMPPortal(); testStep.SetOutput("Logout from Member Portal is Successful"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion testCase.SetStatus(true); } catch (Exception e) { testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, false, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); testCase.SetStatus(false); testCase.SetErrorMessage(e.Message); testCase.SetImageContent(DriverContext.TakeScreenshot().ToString()); Assert.Fail(); } finally { testCase.SetTestCaseSteps(listOfTestSteps); testCase.SetEndTime(new StringHelper().GetFormattedDateTimeNow()); listOfTestCases.Add(testCase); } }