def __init__(self, driver, base_url): driver.get(base_url) self.wait = WebDriverWait(driver, 10) self.login_page = LoginPage(driver, base_url) self.internal_page = InternalPage(driver, base_url) self.user_profile_page = UserProfilePage(driver, base_url) self.user_management_page = UserManagementPage(driver, base_url)
def __init__(self, base_url="http://localhost:8888/addressbook"): self.driver = webdriver.Chrome() self.driver.implicitly_wait(5) self.base_url = base_url self.driver.get(self.base_url) self.login_page = LoginPage(self.driver) self.internal_page = InternalPage(self.driver)
def __init__(self, driver, wait, base_url): self.driver = driver self.wait = wait self.base_url = base_url self.init_page = InitPage(driver, base_url) self.login_page = LoginPage(driver, base_url) self.internal_page = InternalPage(driver, base_url) self.logout_page = LogoutPage(driver, base_url)
def __init__(self, driver, base_url): self.wd = driver self.wd.implicitly_wait(5) self.wd.get(base_url) self.wait = WebDriverWait(driver, 5) self.wd.maximize_window() self.login_page = LoginPage(driver, base_url) self.internal_page = InternalPage(driver, base_url)
def __init__(self, driver, base_url="http://localhost/addressbook"): self.driver = driver self.driver.implicitly_wait(5) self.base_url = base_url self.driver.get(self.base_url) # Pages: self.login_page = LoginPage(self.driver) self.internal_page = InternalPage(self.driver) self.group_view_page = GroupViewPage(self.driver) self.message_page = MessagePage(self.driver)
def __init__(self, driver, base_url="http://127.0.0.1/oxwall/"): # Open Oxwall UI in browser self.driver = driver self.driver.implicitly_wait(1) self.base_url = base_url self.driver.get(self.base_url) self._any_internal_page = InternalPage(self.driver) self.main_page = MainPage(self.driver) self.login_window = LoginWindow(self.driver) self.dash_page = DashboardPage(self.driver)
def __init__(self, driver, base_url): self.driver = driver self.driver.get(base_url) self.driver.maximize_window() self.login_page = LoginPage(driver, base_url) self.internal_page = InternalPage(driver, base_url) self.main_page = MainPage(driver, base_url) self.movie_page = MoviePage(driver, base_url) self.register_page = RegisterPage(driver, base_url) self.edit_page = EditPage(driver, base_url) self.cart_page = CartPage(driver, base_url) self.wait = WebDriverWait(driver, 10)
def __init__(self, driver, base_url): self.driver = driver driver.get(base_url) driver.maximize_window() self.wait = WebDriverWait(driver, 15) self.login_page = LoginPage(driver, base_url) self.persons_page = PersonsPage(driver, base_url) self.internal_page = InternalPage(driver, base_url) self.person_main_page = AddPersonMainPage(driver, base_url) self.enrollments_page = EnrollmentsPage(driver, base_url) self.dictionaries_page = DictionariesPage(driver, base_url) self.person_current_view_page = PersonCurrentViewPage(driver, base_url) self.person_main_view_page = PersonMainViewPage(driver, base_url) self.person_papers_view_page = PersonPapersViewPage(driver, base_url) self.person_enrollment_view_page = PersonEnrollmentViewPage(driver, base_url) self.enrollments_main_page = EnrollmentsMainPage(driver, base_url) self.enrollments_base_page = EnrollmentsBasePage(driver, base_url) self.main_page = AddPersonMainPage(driver, base_url) self.extra_page = AddPersonExtraPage(driver, base_url) self.address_page = AddPersonAddressesPage(driver, base_url) self.contact_page = AddPersonContactsPage(driver, base_url) self.papers_page = AddPersonPapersPage(driver, base_url) self.person_base_page = AddPersonPage(driver, base_url) self.person_enrollment = PersonEnrollmentPage(driver, base_url)
class Application: def __init__(self, driver, base_url): self.driver = driver driver.get(base_url) driver.maximize_window() self.wait = WebDriverWait(driver, 15) self.login_page = LoginPage(driver, base_url) self.persons_page = PersonsPage(driver, base_url) self.internal_page = InternalPage(driver, base_url) self.person_main_page = AddPersonMainPage(driver, base_url) self.enrollments_page = EnrollmentsPage(driver, base_url) self.dictionaries_page = DictionariesPage(driver, base_url) self.person_current_view_page = PersonCurrentViewPage(driver, base_url) self.person_main_view_page = PersonMainViewPage(driver, base_url) self.person_papers_view_page = PersonPapersViewPage(driver, base_url) self.person_enrollment_view_page = PersonEnrollmentViewPage(driver, base_url) self.enrollments_main_page = EnrollmentsMainPage(driver, base_url) self.enrollments_base_page = EnrollmentsBasePage(driver, base_url) self.main_page = AddPersonMainPage(driver, base_url) self.extra_page = AddPersonExtraPage(driver, base_url) self.address_page = AddPersonAddressesPage(driver, base_url) self.contact_page = AddPersonContactsPage(driver, base_url) self.papers_page = AddPersonPapersPage(driver, base_url) self.person_base_page = AddPersonPage(driver, base_url) self.person_enrollment = PersonEnrollmentPage(driver, base_url) def login(self, user, checkbox=False): """ Method performs login to the application. Use app.login(User.Admin) in tests :param user: User.Admin or User.random at the moment :param checkbox: True with checkbox remember me and False without it. Default value is False """ lp = self.login_page lp.is_this_page() lp.username_field.clear() lp.username_field.send_keys(user.username) lp.password_field.clear() lp.password_field.send_keys(user.password) if checkbox: lp.login_checkbox.click() lp.submit_button.click() self.internal_page.wait_until_page_generate() else: lp.submit_button.click() self.internal_page.wait_until_page_generate() def ensure_logged_in(self): """ Method ensures you are logged in, if not it enters as Admin """ element = self.wait.until(presence_of_element_located((By.CSS_SELECTOR, "nav, input[id='inputLogin']"))) if element.tag_name == "input": self.login(User.Admin()) def logout(self): """ Method performs logout from application """ ip = self.internal_page ip.is_this_page() ip.user_dropdown.click() ip.logout_button.click() def ensure_logout(self): """ Method ensures you are logged out from application, if not it performs logout """ element = self.wait.until(presence_of_element_located((By.CSS_SELECTOR, "nav, input[id='inputLogin']"))) if element.tag_name == "nav": self.logout() def is_logged_in(self): """ Method checks you are logged in :return True or False """ return self.internal_page.is_this_page() def is_not_logged_in(self): """ Method checks you are not logged in :return: True or False """ return self.login_page.is_this_page()
class Application(object): def __init__(self, driver, base_url): driver.get(base_url) self.wait = WebDriverWait(driver, 10) self.login_page = LoginPage(driver, base_url) self.internal_page = InternalPage(driver, base_url) self.user_profile_page = UserProfilePage(driver, base_url) self.user_management_page = UserManagementPage(driver, base_url) def logout(self): self.internal_page.logout_button.click() self.wait.until(alert_is_present()).accept() def ensure_logout(self): element = self.wait.until( presence_of_element_located((By.CSS_SELECTOR, "nav, #loginform"))) if element.tag_name == "nav": self.logout() def login(self, user): lp = self.login_page lp.is_this_page lp.username_field.send_keys(user.username) lp.password_field.send_keys(user.password) lp.submit_button.click() def ensure_login_as(self, user): element = self.wait.until( presence_of_element_located((By.CSS_SELECTOR, "nav, #loginform"))) if element.tag_name == "nav": # we are on internal page if self.is_logged_in_as(user): return else: self.logout() self.login(user) def is_logged_in(self): return self.internal_page.is_this_page def is_logged_in_as(self, user): return self.is_logged_in() \ and self.get_logged_user().username == user.username def is_not_logged_in(self): return self.login_page.is_this_page def get_logged_user(self): self.internal_page.user_profile_link.click() upp = self.user_profile_page upp.is_this_page return User( username=upp.user_form.username_field.get_attribute("value"), email=upp.user_form.email_field.get_attribute("value")) def add_user(self, user): self.internal_page.user_management_link.click() ump = self.user_management_page ump.is_this_page ump.user_form.username_field.send_keys(user.username) ump.user_form.email_field.send_keys(user.email) ump.user_form.password_field.send_keys(user.password) ump.user_form.password1_field.send_keys(user.password) #ump.user_form.role_select.select_by_visible_text(user.role) ump.user_form.submit_button.click() def ensure_movie_added(self, movie): self.internal_page.go_home() original_movie_count = len( self.wait.until( presence_of_all_elements_located( (By.CSS_SELECTOR, "div.nocover")))) self.internal_page.add_movie(movie) new_movie_count = len( self.wait.until( presence_of_all_elements_located( (By.CSS_SELECTOR, "div.nocover")))) assert new_movie_count == original_movie_count + 1 self.internal_page.go_home() def ensure_movie_removed(self): self.internal_page.go_home() original_movie_count = len( self.wait.until( presence_of_all_elements_located( (By.CSS_SELECTOR, "div.nocover")))) self.internal_page.remove_last_movie() new_movie_count = len( self.wait.until( presence_of_all_elements_located( (By.CSS_SELECTOR, "div.nocover")))) assert new_movie_count == original_movie_count - 1 self.internal_page.go_home() def ensure_bad_movie_not_added(self, movie): self.internal_page.go_home() original_movie_count = len( self.wait.until( presence_of_all_elements_located( (By.CSS_SELECTOR, "div.nocover")))) element = self.internal_page.add_movie_negative(movie) assert element assert "Please enter a valid number" == element.text self.internal_page.go_home() new_movie_count = len( self.wait.until( presence_of_all_elements_located( (By.CSS_SELECTOR, "div.nocover")))) assert new_movie_count == original_movie_count self.internal_page.go_home()