public void Nationality_CRUD_Test_Scenario() { //1. Login login("*****@*****.**", "adminadmin123"); ImplicitWait(10); //2. Navigate to Nationality navMenu = driver.FindElementByCssSelector(".d-none .ft-menu"); navMenu.Click(); //Lookups = driver.FindElementByXPath("//span[contains(.,'Lookups')]"); Lookups = driver.FindElementByCssSelector(".has-sub .menu-title"); Lookups.Click(); NationalityLookup = driver.FindElementByLinkText("Nationalities"); NationalityLookup.Click(); //Implicit wait for Nationality list to load ImplicitWait(10); //3. Create New Nationality btnAdd = driver.FindElementByXPath("//span[contains(.,'Add Nationality')]"); btnAdd.Click(); //Implicit wait to load create page ImplicitWait(5); txtNationalityName = driver.FindElementById("id_name"); txtDescription = driver.FindElementById("id_description"); txtNationalityName.SendKeys("Villager"); txtDescription.SendKeys("Villager from MineCraft"); btnSave = driver.FindElementByName("save"); btnSave.Click(); //Implicit wait for Nationality list to load ImplicitWait(5); //4. View Created Nationality //Get the current count in the list (This will help getting the specific selector) string count = driver.FindElementByCssSelector(".media-body > h3").Text; //Check that the new Nationality has beeen created and is being displayed in the list NationalityLink = driver.FindElementByLinkText("Villager"); Assert.IsTrue(NationalityLink.Displayed == true); //5. Edit Nationality NationalityLink.Click(); //Implicit wait to load the edit page ImplicitWait(5); btnEdit = driver.FindElementByXPath("//span[contains(.,'Edit')]"); btnEdit.Click(); //Update Nationality txtNationalityName = driver.FindElementById("id_name"); txtDescription = driver.FindElementById("id_description"); txtNationalityName.SendKeys(Keys.Control + "a" + Keys.Control); txtNationalityName.SendKeys("Zillager"); txtDescription.SendKeys(Keys.Control + "a" + Keys.Control); txtDescription.SendKeys("Zillager from MineCraft"); btnSave = driver.FindElementByName("save"); btnSave.Click(); //Implicit wait for Nationality list to load ImplicitWait(5); //Check that the new Nationality has beeen created and is being displayed in the list NationalityLink = driver.FindElementByLinkText("Zillager"); NationalityDescription = driver.FindElementByXPath("//td[contains(.,'Zillager from MineCraft')]"); Assert.IsTrue(NationalityLink.Displayed == true); Assert.IsTrue(NationalityDescription.Displayed == true); //6. Delete Nationality btnDeleteLink = driver.FindElementByCssSelector($".even:nth-child({count}) .fa-trash"); btnDeleteLink.Click(); btnDelete = driver.FindElementByXPath("//button[contains(.,' Confirm')]"); btnDelete.Click(); //Implicit wait for Nationality list to load ImplicitWait(5); alertElement = driver.FindElementByCssSelector(".alert"); Assert.IsTrue(alertElement.Text.Contains("Nationality successfully Deleted")); }