def test_add_new_address(self): # 1 Do login LoginPage(self.browser).open() LoginPage(self.browser).login('*****@*****.**', 'codespace') # 2 Navigate to My Address Book Link(self.browser, 'Address Book').click() Button(self.browser, 'Add New Address').click() #3 fill form test_data_input = { 'First Name': 'Robot', 'Last Name': 'Bobot', 'Company': 'Robotics Inc', 'Telephone': '123123123', 'Fax': '123123412', # address 'Street Address': 'Robo circle 1', 'City': 'Kiev', 'Zip': '12345' } for label, text in test_data_input.items(): Input(self.browser, label).fill(text) Select(self.browser, 'Country').select_by_text('Ukraine') Checkbox(self.browser, 'Use as my default billing address').click()
def test_purchase(self): LoginPage(self.browser).open() LoginPage(self.browser).login('*****@*****.**', 'abrakadabra') Link(self.browser, 'Accessories').hover() Link(self.browser, 'Jewelry').click() Product(self.browser, 'Swing Time Earrings').select() Button(self.browser, 'Add to Cart').click() self.assertEqual(self.browser.title, 'Shopping Cart')
def test_footer_links(self): links = ( # MEN 'View All Men', #'New Arrivals', 'Shirts', 'Tees, Knits and Polos', #'Pants & Denim', 'Blazers', # WOMEN ) head = ( 'Men', # 'New Arrivals', 'Shirts', 'Tees, Knits and Polos', # 'Pants & Denim', 'Blazers', ) LoginPage(self.browser).open() for link, heads in zip(links, head): Link(self.browser, 'Men').hover() Link(self.browser, link).click() self.assertTrue(Header(self.browser, heads).is_visible)
def test_navigation(self): LoginPage(self.browser).open() Link(self.browser, 'Accessories').hover() Link(self.browser, 'Shoes').click() self.assertTrue( Product(self.browser, 'Ann Ankle Boot').is_visible)
def test_cookies(self): self.browser = webdriver.Chrome() ac = ActionChains(self.browser) ac.send_keys(Keys.CONTROL) ac.send_keys(Keys.SHIFT) ac.send_keys('N') ac.perform() page = LoginPage(self.browser) page.open() page.login('*****@*****.**', 'abrakadabra')
def testLoginSuccess(self): login = LoginPage(self.browser) log_data = { 'email': '*****@*****.**', 'password': '******', } for key, value in log_data.items(): login.find_element(key).send_keys(value) login.find_element('login_button').click() self.assertIn('My Account', self.browser.title)
def test_footer_links(self): links = ( # COMPANY 'About Us', 'Contact Us', 'Customer Service', 'Privacy Policy', # QUICK LINKS ) LoginPage(self.browser).open() for link in links: Link(self.browser, link).click() self.assertEqual(self.browser.title, link)
def test_footer_links(self): links = ( # MEN 'New Arrivals', 'Shirts', 'Blazers' # WOMEN ) LoginPage(self.browser).open() for link in links: Link(self.browser, 'Men').hover() Link(self.browser, link).click() self.assertTrue(Header(self.browser, link).is_visible) self.assertIn(link, self.browser.title)
def test_search(self): page = LoginPage(self.browser) page.open() page.search('shoes') #explicitly wait example timeout = self.settings['explicit_timeout'] wait = WebDriverWait(self.browser, timeout) try: options = wait.until( EC.visibility_of_all_elements_located( (By.XPATH, page.locators['search_results']))) except TimeoutException: pass options[0].click() self.assertTrue(Product(self.browser, 'Black Nolita Cami').is_visible)
def test_forgot_password(self): LoginPage(self.browser).forgot_account() self.assertIn('Forgot Your Password', self.browser.title)
def test_login_with_incorrect_password(self): LoginPage(self.browser).login('*****@*****.**', 'codesace') self.assertIn('Customer Login', self.browser.title)
def setUp(self): LoginPage(self.browser).open()