internal void VerifyViewListing() { try { // Wait element turn up IWebElement titleOnPage = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='service-detail-section']//h1/span")); GlobalDefinitions.WaitForTextPresentInElement(GlobalDefinitions.driver, titleOnPage, titleFirstRow, 10); // Verify category, title, description var categoryOnPage = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='service-detail-section']" + "//div[1]/div[2]/div[2]//div[2]/div/div[1]/div/div[2]")).Text; Assert.That(categoryOnPage, Is.EqualTo(categoryFirstRow)); Assert.That(titleOnPage.Text, Is.EqualTo(titleFirstRow)); var descriptionOnPage = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='service-detail-section']" + "//div[2]/div/div/div[1]/div/div/div/div[2]")).Text; Assert.That(descriptionOnPage, Contains.Substring(descriptionFirstRow.Substring(0, descriptionFirstRow.Length - 3))); }catch (Exception ex) { Assert.Fail("Test failed to verify viewing listing", ex.Message); } }
internal void VerifyEnterShareSkill(IWebDriver driver) { // Wait element turn up & Verify part info on default manage listing page GlobalDefinitions.WaitForElementClickable(driver, "XPath", "//*[@id='listing-management-section']" + "//tr[1]/td[8]/div/button[1]/i", 10); // Verify Title var titleExpected = driver.FindElement(By.XPath("//*[@id='listing-management-section']" + "//tbody/tr[1]/td[3]")).Text; Assert.That(titleExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Title"))); // Verify Category var categoryExpected = driver.FindElement(By.XPath("//*[@id='listing-management-section']" + "//tbody/tr[1]/td[2]")).Text; Assert.That(categoryExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Category"))); // Verify Tags // Not available now on this page // Verify Service Type var serviceTypeExpected = driver.FindElement(By.XPath("//*[@id='listing-management-section']" + "//tbody/tr[1]/td[5]")).Text; if (serviceTypeExpected == "Hourly") { serviceTypeExpected = "0"; Assert.That(serviceTypeExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "ServiceType"))); } if (serviceTypeExpected == "One-off") { serviceTypeExpected = "1"; Assert.That(serviceTypeExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "ServiceType"))); } // Verify Skill Trade / Two conditions string skillTradeExpected = driver.FindElement(By.XPath("//*[@id='listing-management-section']" + "//tbody/tr[1]/td[6]")).GetAttribute("class").ToString(); if (skillTradeExpected == "grey remove circle large icon") { skillTradeExpected = "false"; Assert.That(skillTradeExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "SkillTrade"))); } else if (skillTradeExpected == "blue check circle outline large icon") { skillTradeExpected = "true"; Assert.That(skillTradeExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "SkillTrade"))); } // Verify Active // Not available // Verify remaining parts on detail page // Click eye icon and wait element turn up driver.FindElement(By.XPath("//*[@id='listing-management-section']" + "//tr[1]/td[8]/div/button[1]/i")).Click(); IWebElement titleOnDetailsPage = driver.FindElement(By.XPath("//span[@class='skill-title']")); GlobalDefinitions.WaitForTextPresentInElement(driver, titleOnDetailsPage, GlobalDefinitions.ExcelLib.ReadData(2, "Title"), 10); // Verify Description var descriptionExpected = driver.FindElement(By.XPath("//*[@id='service-detail-section']" + "/div[2]/div/div[2]/div[1]/div[1]/div[2]/div[2]/div/div/div[1]//div[2]")).Text; Assert.That(descriptionExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Description"))); // Verify Location Tyoe var locationTypeExpected = driver.FindElement(By.XPath("//*[@id='service-detail-section']" + "//div[1]//div[2]//div[3]//div[3]//div[2]")).Text; if (locationTypeExpected == "On-Site") { locationTypeExpected = "0"; Assert.That(locationTypeExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "LocationType"))); } if (locationTypeExpected == "Online") { locationTypeExpected = "1"; Assert.That(locationTypeExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "LocationType"))); } // Verify Subcategory var subCategoryExpected = driver.FindElement(By.XPath("//*[@id='service-detail-section']" + "//div[2]/div[2]/div//div[2]//div[2]/div/div[2]")).Text; Assert.That(subCategoryExpected, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "SubCategory"))); // Verify Available days and time var startDateExpected = driver.FindElement(By.XPath("//*[@id='service-detail-section']" + "//div[3]/div/div[1]/div/div[2]")).Text; var startDateExcel = GlobalDefinitions.ExcelLib.ReadData(2, "StartDate"); DateTime startDt = DateTime.Parse(startDateExcel); var startDateFormat = startDt.ToString("yyyy-MM-dd"); Assert.That(startDateExpected, Is.EqualTo(startDateFormat)); var endDateExpected = driver.FindElement(By.XPath("//*[@id='service-detail-section']" + "//div[2]//div[3]//div[2]//div[2]")).Text; var endDateExcel = GlobalDefinitions.ExcelLib.ReadData(2, "EndDate"); DateTime endDt = DateTime.Parse(endDateExcel); var endDateFormat = endDt.ToString("yyyy-MM-dd"); Assert.That(endDateExpected, Is.EqualTo(endDateFormat)); }
internal void EnterShareSkill(IWebDriver driver) { // Populate data saved in excel to collection GlobalDefinitions.ExcelLib.PopulateInCollection(Base.ShareSkillPath, "ShareSkill"); // Click ShareSkill Button GlobalDefinitions.WaitForElementClickable(driver, "LinkText", "Share Skill", 5); ShareSkillBtn.Click(); // Wait Elements on new page GlobalDefinitions.WaitForTextPresentInElement(driver, Title, "", 10); // Enter Title from excel Title.SendKeys(GlobalDefinitions.ExcelLib.ReadData(2, "Title")); // Enter Description from excel Description.SendKeys(GlobalDefinitions.ExcelLib.ReadData(2, "Description")); // Select Category from Excel GlobalDefinitions.WaitForElement(driver, "Name", "categoryId", 10); new SelectElement(CategoryDropdown).SelectByText(GlobalDefinitions.ExcelLib.ReadData(2, "Category")); new SelectElement(SubCategoryDropdown).SelectByText(GlobalDefinitions.ExcelLib.ReadData(2, "SubCategory")); // Enter tags from excel Tags.SendKeys(GlobalDefinitions.ExcelLib.ReadData(2, "Tags")); Tags.SendKeys(Keys.Enter); // Choose Service Type radio button from excel IWebElement ServiceTypeRadioBtn = driver.FindElement(By.XPath("//input[@name='serviceType' " + "and @value='" + GlobalDefinitions.ExcelLib.ReadData(2, "ServiceType") + "'] ")); ServiceTypeRadioBtn.Click(); // Choose Location Type radio button from excel IWebElement LocationTypeRadioBtn = driver.FindElement(By.XPath("//input[@name='locationType' " + "and @value='" + GlobalDefinitions.ExcelLib.ReadData(2, "LocationType") + "']")); LocationTypeRadioBtn.Click(); // Enter Available days from excel // *** Enter start date and end date *** StartDateInputArea.SendKeys(GlobalDefinitions.ExcelLib.ReadData(2, "StartDate")); EndDateInputArea.SendKeys(GlobalDefinitions.ExcelLib.ReadData(2, "EndDate")); // *** Set loop for days checkbox *** for (int rows = 2; rows < 9; rows++) { var sr = GlobalDefinitions.ExcelLib.ReadData(rows, "SelectDay").ToString(); if (sr != null && sr != "") { // Select checkbox IWebElement DaysCheckbox = driver.FindElement(By.XPath("//input[@name='Available' " + "and @index='" + GlobalDefinitions.ExcelLib.ReadData(rows, "SelectDay") + "']")); DaysCheckbox.Click(); // Enter start time IWebElement StartTimeInputArea = driver.FindElement(By.XPath("//input[@name='StartTime' " + "and @index='" + GlobalDefinitions.ExcelLib.ReadData(rows, "SelectDay") + "']")); StartTimeInputArea.SendKeys(GlobalDefinitions.ExcelLib.ReadData(rows, "StartTime")); // Enter end time IWebElement EndTimeInputArea = driver.FindElement(By.XPath("//input[@name='EndTime' " + "and @index='" + GlobalDefinitions.ExcelLib.ReadData(rows, "SelectDay") + "']")); EndTimeInputArea.SendKeys(GlobalDefinitions.ExcelLib.ReadData(rows, "EndTime")); } else { break; } } // Choose Skill Trade radio button try { string SkillTradeTypeExcel = GlobalDefinitions.ExcelLib.ReadData(2, "SkillTrade").ToString(); IWebElement SkillTradeRadioBtn = driver.FindElement(By.XPath("//input[@name='skillTrades' " + "and @value='" + SkillTradeTypeExcel + "']")); SkillTradeRadioBtn.Click(); // Condition1: Enter Skill-Exchange from excel-------Condition2: Enter Credit if (SkillTradeTypeExcel == "true") { SkillExchange.SendKeys(GlobalDefinitions.ExcelLib.ReadData(2, "Skill-Exchange Tag")); SkillExchange.SendKeys(Keys.Enter); } if (SkillTradeTypeExcel == "false") { try { var CreditExcel = Convert.ToDecimal(GlobalDefinitions.ExcelLib.ReadData(2, "Credit")); if (0 <= CreditExcel && CreditExcel <= 10) { CreditAmount.SendKeys(CreditExcel.ToString()); } else { Assert.Fail("Please enter a number between 0-10."); } } catch (Exception e) { Assert.Fail("Credit input is illegal, please check format!", e.Message); } } } catch (Exception ex) { Assert.Fail("Test failed at choosing skill trade type", ex.Message); } //Upload document from the path saved in excel, if it's input type, then can send path directly // Option 1: SendKeys //try //{ // IWebElement upload = driver.FindElement(By.XPath("//input[@id='selectFile']")); // // Uploading File path // var SampleWorkPath = MarsResource.SampleWorkPath; // string fullPath = System.IO.Path.GetFullPath(SampleWorkPath); // upload.SendKeys(fullPath); //} //catch (Exception e) //{ // Assert.Fail("Failed to upload work sample", e.Message); //} // Option 2: AutoIt //driver.FindElement(By.ClassName("huge plus circle icon padding-25")).Click(); //Class Name Shouldn't have space inside, or use xpath or css. driver.FindElement(By.CssSelector("i[class='huge plus circle icon padding-25']")).Click(); AutoItX3 AutoIt = new AutoItX3(); AutoIt.WinActivate("Open"); // Must wait input text ready to input or will lose part of the url AutoIt.WinWaitActive("Open", "Edit", 3); var SampleWorkPath = MarsResource.SampleWorkPath; AutoIt.Send(Path.GetFullPath(SampleWorkPath)); Thread.Sleep(1500); AutoIt.Send("{ENTER}"); // Choose Active radio button GlobalDefinitions.WaitForElement(driver, "XPath", "//i[@class='remove sign icon floatRight']", 10); IWebElement IsActiveRadioBtn = driver.FindElement(By.XPath("//input[@name='isActive' and" + " @value='" + GlobalDefinitions.ExcelLib.ReadData(2, "Active") + "']")); IsActiveRadioBtn.Click(); // Click Save Button to save all data Save.Click(); }
// Verify Delete-Profile internal void VerifyDeleteProfile() { try { // Populate data saved in Excel GlobalDefinitions.ExcelLib.PopulateInCollection(Base.ExcelPath, "Profile"); // Refresh the page GlobalDefinitions.driver.Navigate().Refresh(); // Wait for all text present in Element GlobalDefinitions.WaitForTextPresentInElement(GlobalDefinitions.driver, profileName, GlobalDefinitions.ExcelLib.ReadData(2, "Name"), 10); } catch (Exception ex) { Assert.Fail("Test failed to verify deleting profile at preparation steps", ex.Message); } #region Verify Delete Language try { // Jump to Language tab LanguageTab.Click(); // Read data saved in Excel var languageExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Language"); try { // Find the last row data GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='first']" + "//table/tbody[last()]/tr//*[contains(text(), '" + languageExcel + "')]")); Assert.Fail("Failed to delete language"); } catch (NoSuchElementException) { } } catch (Exception ex) { Assert.Fail("Test failed to verify deleting language", ex.Message); } #endregion #region Verify Delete Skills try { // Jump to Skill tab SkillTab.Click(); // Read Skill saved in Excel var skillExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Skill"); try { // Check the last row data GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='second']" + "//table/tbody[last()]/tr//*[contains(text(), '" + skillExcel + "')]")); Assert.Fail("Failed to delete skill"); } catch (NoSuchElementException) { } }catch (Exception ex) { Assert.Fail("Test Failed to verify deleting skill", ex.Message); } #endregion #region Verify Delete Education // Jump to Education tab EducationTab.Click(); // Read Education info saved in excel var instituteNameExcel = GlobalDefinitions.ExcelLib.ReadData(2, "University"); var instituteCountryExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Country"); var instituteTitleExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Title"); var instituteDegreeExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Degree"); var instituteGraduateYearExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Graduation Year"); try { // Find the last row data GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='third']" + "//table/tbody[last()]/tr//*[contains(text(), '" + instituteNameExcel + "')]")); GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='third']" + "//table/tbody[last()]/tr//*[contains(text(), '" + instituteCountryExcel + "')]")); GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='third']" + "//table/tbody[last()]/tr//*[contains(text(), '" + instituteTitleExcel + "')]")); GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='third']" + "//table/tbody[last()]/tr//*[contains(text(), '" + instituteDegreeExcel + "')]")); GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='third']" + "//table/tbody[last()]/tr//*[contains(text(), '" + instituteGraduateYearExcel + "')]")); Assert.Fail("Failed to delete education."); } catch (NoSuchElementException) { } catch (Exception ex) { Assert.Fail("Test failed to verify deleting education", ex.Message); } #endregion #region Verify Delete Certificate // Jump to Certification tab CertificationTab.Click(); // Read Education info saved in excel var certificateNameExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Certificate"); var certificateFromExcel = GlobalDefinitions.ExcelLib.ReadData(2, "CertifiedFrom"); var certificateYearExcel = GlobalDefinitions.ExcelLib.ReadData(2, "Certificate Issuing Year"); try { // Find the last row data GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='fourth']" + "//table/tbody[last()]/tr//*[contains(text(), '" + certificateNameExcel + "')]")); GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='fourth']" + "//table/tbody[last()]/tr//*[contains(text(), '" + certificateFromExcel + "')]")); GlobalDefinitions.driver.FindElement(By.XPath("//div[@data-tab='fourth']" + "//table/tbody[last()]/tr//*[contains(text(), '" + certificateYearExcel + "')]")); Assert.Fail("Failed to delete certificate."); } catch (NoSuchElementException) { } catch (Exception ex) { Assert.Fail("Test failed to verify deleting certificate", ex.Message); } #endregion }
// Delete Profile internal void DeleteProfile() { try { // Populate data saved in Excel GlobalDefinitions.ExcelLib.PopulateInCollection(Base.ExcelPath, "Profile"); // Wait for all text present in Element GlobalDefinitions.WaitForTextPresentInElement(GlobalDefinitions.driver, profileName, GlobalDefinitions.ExcelLib.ReadData(2, "Name"), 10); } catch (Exception e) { Assert.Fail("Test failed to wait element for deleting profile", e.Message); } #region Delete Language try { //Delete the last record LanguageTab.Click(); LanguageDeleteBtn.Click(); Base.test.Log(RelevantCodes.ExtentReports.LogStatus.Pass, "Delete language successfully"); } catch (NoSuchElementException e) { Assert.Fail("No records in list to delete, please add language first!", e.Message); } catch (Exception ex) { Assert.Fail("Test failed to delete language", ex.Message); } #endregion #region Delete Skills try { //Delete last record SkillTab.Click(); SkillDeleteBtn.Click(); Base.test.Log(RelevantCodes.ExtentReports.LogStatus.Pass, "Delete skill successfully"); } catch (NoSuchElementException e) { Assert.Fail("No records in list to delete, please add skill first!", e.Message); } catch (Exception ex) { Assert.Fail("Test failed to delete skill", ex.Message); } #endregion #region Delete Education try { //Delete last record EducationTab.Click(); EducationDeleteBtn.Click(); Base.test.Log(RelevantCodes.ExtentReports.LogStatus.Pass, "Delete education successfully"); } catch (NoSuchElementException e) { Assert.Fail("No records in list to delete, please add education first!", e.Message); } catch (Exception ex) { Assert.Fail("Test failed to delete Education", ex.Message); } #endregion #region Delete Certification try { //Delete last record CertificationTab.Click(); CertificateDeleteBtn.Click(); Base.test.Log(RelevantCodes.ExtentReports.LogStatus.Pass, "Delete certification successfully"); } catch (NoSuchElementException e) { Assert.Fail("No records in list to delete, please add certification first!", e.Message); } catch (Exception ex) { Assert.Fail("Test failed to delete Certification", ex.Message); } #endregion }
// Verify Enter-Profile internal void VerifyEnterProfile() { try { // Populate data saved in Excel GlobalDefinitions.ExcelLib.PopulateInCollection(Base.ExcelPath, "Profile"); // Refresh the page GlobalDefinitions.driver.Navigate().Refresh(); // Wait for all text present in Element GlobalDefinitions.WaitForTextPresentInElement(GlobalDefinitions.driver, profileName, GlobalDefinitions.ExcelLib.ReadData(2, "Name"), 10); } catch (Exception e) { Assert.Fail("Test failed to at preparation steps of verifying enter-profile", e.Message); } #region Verify Enter Availability Type try { var AvaiType = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']/div/" + "section[2]//div[2]//div[3]//div[2]/div/span")).Text; Assert.That(AvaiType, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Availability Type"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Availability Type", ex.Message); } #endregion #region Verify Enter Availability Hours try { var AvaiHours = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[2]//div[3]//div[3]/div/span")).Text; Assert.That(AvaiHours, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Availability Hours"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Availability Hours", ex.Message); } #endregion #region Verify Enter Earn Target try { var salary = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[2]//div[3]//div[4]/div/span")).Text; Assert.That(salary, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Earn Target"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Earn Target", ex.Message); } #endregion #region Verify Enter Description try { var description = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]/div/div/div/div[3]/div/div/div/span")).Text; Assert.That(description, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Description"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Description", ex.Message); } #endregion #region Verify Enter Language try { //Verify Language Name var lastRowLanguageName = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[2]//div[2]//tbody[last()]/tr/td[1]")).Text; Assert.That(lastRowLanguageName, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Language"))); //Verify Language Level var lastRowLanguageLevel = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[2]//div[2]//tbody[last()]/tr/td[2]")).Text; Assert.That(lastRowLanguageLevel, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Language Level"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Language", ex.Message); } #endregion #region Verify Skills try { //Jump to Skill tab SkillTab.Click(); //Verify Skill Name var lastRowSkillName = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[3]//div[2]//tbody[last()]/tr/td[1]")).Text; Assert.That(lastRowSkillName, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Skill"))); //Verify Skill Level var lastRowSkillLevel = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[3]//div[2]//tbody[last()]/tr/td[2]")).Text; Assert.That(lastRowSkillLevel, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Skill Level"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Skills", ex.Message); } #endregion #region Verify Education try { //Jump to Education tab EducationTab.Click(); //Verify Education Country var lastRowEducationCountry = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[4]//div[2]//tbody[last()]/tr/td[1]")).Text; Assert.That(lastRowEducationCountry, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Country"))); //Verify Education Name var lastRowEducationName = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[4]//div[2]//tbody[last()]/tr/td[2]")).Text; Assert.That(lastRowEducationName, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "University"))); //Verify Education Title var lastRowEducationTitle = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[4]//div[2]//tbody[last()]/tr/td[3]")).Text; Assert.That(lastRowEducationTitle, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Title"))); //Verify Education Degree var lastRowEducationDegree = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[4]//div[2]//tbody[last()]/tr/td[4]")).Text; Assert.That(lastRowEducationDegree, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Degree"))); //Verify Education Graduation Year var lastRowEducationGraduationYear = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[4]//div[2]//tbody[last()]/tr/td[5]")).Text; Assert.That(lastRowEducationGraduationYear, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Graduation Year"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Description", ex.Message); } #endregion #region Verify Certifications try { //Jump to Certification tab CertificationTab.Click(); //Verify Certificate Name var lastRowCertificateName = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[5]//div[2]//tbody[last()]/tr/td[1]")).Text; Assert.That(lastRowCertificateName, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Certificate"))); //Verify Certificate Issuing Place var lastRowCertificateFrom = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[5]//div[2]//tbody[last()]/tr/td[2]")).Text; Assert.That(lastRowCertificateFrom, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "CertifiedFrom"))); //Verify Certificate Year var lastRowCertificateYear = GlobalDefinitions.driver.FindElement(By.XPath("//*[@id='account-profile-section']" + "/div/section[2]//div[3]/form/div[5]//div[2]//tbody[last()]/tr/td[3]")).Text; Assert.That(lastRowCertificateYear, Is.EqualTo(GlobalDefinitions.ExcelLib.ReadData(2, "Certificate Issuing Year"))); } catch (Exception ex) { Assert.Fail("Test failed to verify Entering Certificate", ex.Message); } #endregion }