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 void BTA11_CSP_ForgotPasswordNegativeScenario() { #region TestData login.UserName = CsPortalData.csadmin; login.Password = CsPortalData.csadmin_password; AgentRegistration agent = new AgentRegistration(); agent.FistName = AgentValues.ForgotPasswordTestAgent; agent.LastName = AgentValues.ForgotPasswordTestAgent; agent.Role = RoleValue.Admin.ToString(); agent.UserName = AgentValues.ForgotPasswordTestAgent; agent.Status = AgentRegistration.AgentStatus.Active.ToString(); agent.Password = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(8); string ResetCode = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(4); string ExpectedErrorMessage = "The reset code you entered is invalid."; #endregion #region Object Initialization ProjectBasePage basePages = new ProjectBasePage(driverContext); testCase = new TestCase(TestContext.TestName); listOfTestSteps = new List <TestStep>(); testStep = new TestStep(); var CSP_HomePage = new CSPortal_HomePage(DriverContext); var CSPortal_UserAdministration = new CSPortal_UserAdministration(DriverContext); var CSPortal_UserAdministrationAgentPage = new CSPortal_UserAdministrationAgentPage(DriverContext); var CSP_ForgotPassword = new CSPortal_ForgotPassword(DriverContext); var CSP_LoginPage = new CSPortal_LoginPage(DriverContext); #endregion try { CSP_LoginPage.LaunchCSPortal(login.Csp_url, listOfTestSteps); CSP_LoginPage.LoginCSPortal(login, listOfTestSteps); CSP_HomePage.NavigateToDashBoardMenu(CSPortal_HomePage.DashBoard.UserAdministration, listOfTestSteps); CSPortal_UserAdministration.NavigateToSectionMenu(CSPortal_UserAdministration.Menu.Agents, listOfTestSteps); CSPortal_UserAdministrationAgentPage.CreateAgent(agent, listOfTestSteps); CSP_HomePage.LogoutCSPortal(listOfTestSteps); CSP_LoginPage.LaunchCSPortal(login.Csp_url, listOfTestSteps); CSP_LoginPage.ClickForgotPassword(listOfTestSteps); CSP_ForgotPassword.EnterUserNameandClickOnSubmit(agent.UserName, listOfTestSteps); CSP_ForgotPassword.SelectEmailOption(listOfTestSteps); CSP_ForgotPassword.ClickSendResetCodeButton(listOfTestSteps); CSP_ForgotPassword.SelectAlreadyHaveResetCode(listOfTestSteps); CSP_ForgotPassword.ClickSendResetCodeButton(listOfTestSteps); CSP_ForgotPassword.EnterResetCodeAnd_ClickOnSubmit(ResetCode, listOfTestSteps); CSP_ForgotPassword.VerifyInvalidResetCodeError(ExpectedErrorMessage, listOfTestSteps); testCase.SetStatus(true); } catch (Exception e) { 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 BTA270_CSP_Change_Password() { ProjectBasePage basePages = new ProjectBasePage(driverContext); testCase = new TestCase(TestContext.TestName); listOfTestSteps = new List <TestStep>(); testStep = new TestStep(); string stepName = ""; bool stepstatus; string StepOutput; try { var CSP_HomePage = new CSPortal_HomePage(DriverContext); var CSPortal_UserAdministration = new CSPortal_UserAdministration(DriverContext); var CSPortal_UserAdministrationAgentPage = new CSPortal_UserAdministrationAgentPage(DriverContext); AgentRegistration agent = new AgentRegistration(); #region Step1:Launch CSPortal Portal stepName = "Launch Customer Service Portal URL"; testStep = TestStepHelper.StartTestStep(testStep); var CSP_LoginPage = new CSPortal_LoginPage(DriverContext); CSP_LoginPage.LaunchCSPortal(login.Csp_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: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 Step_Output); testStep.SetOutput(Step_Output); testStep.SetOutput("Login As csadmin User is Successful"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step3:Navigate to User Administration stepName = "Navigate to UserAdministration Page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_HomePage.NavigateToDashBoardMenu(CSPortal_HomePage.DashBoard.UserAdministration, out StepOutput); testStep.SetOutput(StepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step4:Navigate to Agent Page stepName = "Navigate to Agent Page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSPortal_UserAdministration.NavigateToSectionMenu(CSPortal_UserAdministration.Menu.Agents); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput("Navigate to Agent Page is Successful"); listOfTestSteps.Add(testStep); #endregion #region Step5:Create new TestAgent user as per config file,if not existed testStep = TestStepHelper.StartTestStep(testStep); agent.FistName = AgentValues.ChangePasswordTestAgent; agent.LastName = AgentValues.ChangePasswordTestAgent; agent.Role = RoleValue.Admin.ToString(); agent.Status = AgentRegistration.AgentStatus.Active.ToString(); agent.UserName = AgentValues.ChangePasswordTestAgent; stepName = "Create New Agent if user is not existed"; agent.Password = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(8); testStep.SetOutput(CSPortal_UserAdministrationAgentPage.CreateAgent(agent.FistName, agent.LastName, agent.Role, agent.UserName, agent.Password, agent.Status)); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step6:Change Password for Test Agent testStep = TestStepHelper.StartTestStep(testStep); stepName = "Change Password for Test Agent"; stepstatus = CSPortal_UserAdministrationAgentPage.ChangeAgentPassword(agent.UserName, agent.Password, agent.Password, out StepOutput); testStep.SetOutput(StepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step7:Logout As Test User stepName = "Logout from CS Portal"; testStep = TestStepHelper.StartTestStep(testStep); CSP_HomePage.LogoutCSPortal(); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput("LogOut is Successful as csadmin"); listOfTestSteps.Add(testStep); #endregion #region Step8:Login As Test User stepName = "Login As User, User Name:" + agent.UserName; testStep = TestStepHelper.StartTestStep(testStep); CSP_LoginPage.LoginCSPortal(agent.UserName, agent.Password, out StepOutput); testStep.SetOutput(StepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput(stepName); listOfTestSteps.Add(testStep); #endregion #region Step9:Verify First Name and Last Name stepName = "Verify First Name and Last Name"; testStep = TestStepHelper.StartTestStep(testStep); testStep.SetOutput(CSP_HomePage.VerifyFirstNameAndLastName(agent.FistName, agent.LastName)); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step10:Navigate to Change Password testStep = TestStepHelper.StartTestStep(testStep); stepName = "Navigate to Change Password"; stepstatus = CSP_HomePage.NavigateToDashBoardMenu(CSPortal_HomePage.DashBoard.ChangePassword, out StepOutput); testStep.SetOutput(StepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Stept11: Change Password testStep = TestStepHelper.StartTestStep(testStep); stepName = "Change Password for Test Agent"; var cSP_ChangePassword = new CSPortal_ChangePassword(DriverContext); string agen_OldPassword = agent.Password; agent.Password = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(8); cSP_ChangePassword.EnterPasswordDetails(agen_OldPassword, agent.Password, agent.Password, out string ValidationMessage); cSP_ChangePassword.SavePassword(); stepstatus = cSP_ChangePassword.VerifySuccessMessage(agen_OldPassword, agent.Password, out StepOutput); testStep.SetOutput(StepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step12:Logout As Test User stepName = "Logout from CS Portal User:"******"WEB")); testStep.SetOutput("LogOut is Successful as User:"******"Login As User, User Name:" + agent.UserName; testStep = TestStepHelper.StartTestStep(testStep); CSP_LoginPage.LoginCSPortal(agent.UserName, agent.Password, out StepOutput); testStep.SetOutput(Step_Output); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput(stepName); #endregion #region Step14:Verify First Name and Last Name stepName = "Verify First Name and Last Name"; testStep = TestStepHelper.StartTestStep(testStep); testStep.SetOutput(CSP_HomePage.VerifyFirstNameAndLastName(agent.FistName, agent.LastName)); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step15:Logout As Test User stepName = "Logout from CS Portal User:"******"WEB")); testStep.SetOutput("LogOut is Successful as User:"******"WEB")); listOfTestSteps.Add(testStep); testCase.SetStatus(false); testStep.SetOutput(e.Message); 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 BTA271__CSP_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_CS_LogPath = CsPortalData.BTA_DEV_CS_LogPath; try { var CSP_HomePage = new CSPortal_HomePage(DriverContext); var CSPortal_UserAdministration = new CSPortal_UserAdministration(DriverContext); var CSPortal_UserAdministrationAgentPage = new CSPortal_UserAdministrationAgentPage(DriverContext); var CSP_ForgotPassword = new CSPortal_ForgotPassword(DriverContext); AgentRegistration agent = new AgentRegistration(); #region Step1:Launch CSPortal stepName = "Launch Customer Service Portal URL"; testStep = TestStepHelper.StartTestStep(testStep); var CSP_LoginPage = new CSPortal_LoginPage(DriverContext); 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:Navigate to User Administration stepName = "Navigate to UserAdministration Page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_HomePage.NavigateToDashBoardMenu(CSPortal_HomePage.DashBoard.UserAdministration, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step4:Navigate to Agent Page stepName = "Navigate to Agent Page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSPortal_UserAdministration.NavigateToSectionMenu(CSPortal_UserAdministration.Menu.Agents); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput("Navigate to Agent Page is Successful"); listOfTestSteps.Add(testStep); #endregion #region Step5:Create new TestAgent user as per config file,if not existed testStep = TestStepHelper.StartTestStep(testStep); agent.FistName = AgentValues.ForgotPasswordTestAgent; agent.LastName = AgentValues.ForgotPasswordTestAgent; agent.Role = RoleValue.Admin.ToString(); agent.UserName = AgentValues.ForgotPasswordTestAgent; agent.Status = AgentRegistration.AgentStatus.Active.ToString(); stepName = "Create New Agent if user is not existed"; agent.Password = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(8); testStep.SetOutput(CSPortal_UserAdministrationAgentPage.CreateAgent(agent.FistName, agent.LastName, agent.Role, agent.UserName, agent.Password, agent.Status)); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step6:Logout As Test User stepName = "Logout from CS Portal"; testStep = TestStepHelper.StartTestStep(testStep); CSP_HomePage.LogoutCSPortal(); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput("Logout is Successful as csadmin"); listOfTestSteps.Add(testStep); #endregion #region Step7:Launch CSPortal stepName = "Launch Customer Service Portal URL"; testStep = TestStepHelper.StartTestStep(testStep);; CSP_LoginPage.LaunchCSPortal(login.Csp_url, out stepOutput); testStep.SetOutput(stepOutput); CSP_ForgotPassword.GetInitialWordCountFromLogFile(); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step8: Click on Forgot Password stepName = "Click on Forgot Password"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_LoginPage.ClickForgotPassword(); testStep.SetOutput("Clicked on Forgot Password Successfully"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step9: Enter valid user name and click Submit button stepName = "Enter a valid user name and click Submit button"; testStep = TestStepHelper.StartTestStep(testStep); CSP_ForgotPassword.EnterUserName(agent.UserName); CSP_ForgotPassword.ClickSubmitButton(); testStep.SetOutput("Entered User name: " + agent.UserName + " and clicked on Submit button"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step10: Select Email option to receive reset code stepName = "Select Email option to receive reset code"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_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 Step11: Click on Send my reset code stepName = "Click on Send my reset code"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_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: Select I already have a reset code option stepName = "Select I already have a reset code option"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_ForgotPassword.SelectAlreadyHaveResetCode(); testStep.SetOutput("Selected I already have a rest code option"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step13: Click on Send my reset code stepName = "Click on Send my reset code"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_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 Step14: Enter the reset code received in the Email/Log stepName = "Enter the reset code received in the Email/Log"; testStep = TestStepHelper.StartTestStep(testStep); CSP_ForgotPassword.EnterResetCodeFromLogFile(BTA_DEV_CS_LogPath, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step15: Click on Submit button stepName = "Click on Submit button"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_ForgotPassword.ClickSubmitButton(); testStep.SetOutput("Clicked on Submit button"); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step16: Create new Password for Test User testStep = TestStepHelper.StartTestStep(testStep); stepName = "Create new Passwod for Test User"; agent.Password = RandomDataHelper.RandomAlphanumericStringWithSpecialChars(8); stepstatus = CSP_ForgotPassword.CreateNewPassword(agent.UserName, agent.Password, agent.Password, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step17: Return back to login page stepName = "Return back to login page"; testStep = TestStepHelper.StartTestStep(testStep); stepstatus = CSP_ForgotPassword.ReturnToLoginPage(out stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); testStep.SetOutput(stepOutput); listOfTestSteps.Add(testStep); #endregion #region Step18: Login with the newly created Password stepName = "Login with User, User Name:" + agent.UserName + "with newly reset Password:"******"WEB")); testStep.SetOutput(stepName); listOfTestSteps.Add(testStep); #endregion #region Step19: Verify First Name and Last Name stepName = "Verify First Name and Last Name"; testStep = TestStepHelper.StartTestStep(testStep); testStep.SetOutput(CSP_HomePage.VerifyFirstNameAndLastName(agent.FistName, agent.LastName)); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, true, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Step20: Navigate to Change Password testStep = TestStepHelper.StartTestStep(testStep); stepName = "Navigate to Change Password"; stepstatus = CSP_HomePage.NavigateToDashBoardMenu(CSPortal_HomePage.DashBoard.ChangePassword, out stepOutput); testStep.SetOutput(stepOutput); testStep = TestStepHelper.EndTestStep(testCase, testStep, stepName, stepstatus, DriverContext.SendScreenshotImageContent("WEB")); listOfTestSteps.Add(testStep); #endregion #region Stept21: Change Password for Test Agent to default testStep = TestStepHelper.StartTestStep(testStep); stepName = "Change Password for Test Agent to default"; var cSP_ChangePassword = new CSPortal_ChangePassword(DriverContext); string agen_OldPassword = agent.Password; string agent_DefaultPassword = AgentValues.Agentpassword; cSP_ChangePassword.EnterPasswordDetails(agen_OldPassword, agent_DefaultPassword, agent_DefaultPassword, out string ValidationMessage); cSP_ChangePassword.SavePassword(); stepstatus = cSP_ChangePassword.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 Step22: Logout As Test User stepName = "Logout from CS Portal User:"******"WEB")); testStep.SetOutput("Logout is Successful as User:"******"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); } }