def _load_elements(self): self.add_element('title', Element(self.driver, "//h1", "xpath")) self.add_element('textField', Input(self.driver, "appCtrl.textField", "model")) self.add_element('textFieldFull', Input(self.driver, "appCtrl.textFieldFull", "model")) self.add_element('checkboxFalse', Checkbox(self.driver, "appCtrl.checkField", 'model')) self.add_element( 'checkboxTrue', Checkbox(self.driver, "appCtrl.checkFieldTrue", 'model')) self.add_element('ELEMENT_NOT_ON_PAGE', Element(self.driver, "//h2", 'xpath'))
def test_set_element_by_xpath(self): class PageTest(Page): pass page = PageTest(self.driver, '/index.html') page.add_element( 'checkvalue', Element(page.driver, "//span[@id='checkValue']", 'xpath')) self.assertIsInstance(page.get_element('checkvalue'), Element)
def check(self): self.enter() try: self.get_element('recaptcha_checkbox').click_checkbox() wait = WebDriverWait(self.driver, 10) check_mark = self.get_element('recaptcha_checkmark') check_mark = wait.until( EC.visibility_of_element_located((By.XPATH, check_mark.path))) checked_checkbox = Element( self.driver, "//span[@role='checkbox' and @aria-checked='true']") WebDriverWait(self.driver, 3).until( EC.presence_of_element_located( (By.XPATH, checked_checkbox.path))) finally: self.exit()
def _load_elements(self): self.add_element( 'recaptcha_checkbox', VisibleReCaptchaChecbox(self.driver, "//span[@id='recaptcha-anchor']")) self.add_element( 'recaptcha_checkmark', Element(self.driver, "//span[@aria-disabled='false']", display_timeout_milliseconds=5000)) self.add_element( 'testing_recaptcha_alert', IframeElement(self, self.driver, "//div[@class='rc-anchor-alert']", display_timeout_milliseconds=5000))
def test_fading_in_element_is_displayed_after_some_delay(self): self.driver.ignore_synchronization = True self.driver.get(self.base_url + '/test_fadein.html') Element(self.driver, "//button[@id='button']", "xpath").click() el = Element(self.driver, "//div[@id='test']/p", "xpath", 2500) self.assertTrue(el.is_displayed())
def test_fading_in_element_is_not_displayed_if_opacity_is_zero(self): self.driver.ignore_synchronization = True self.driver.get(self.base_url + '/test_fadein.html') Element(self.driver, "//button[@id='button']", "xpath").click() el = Element(self.driver, "//div[@id='test']/p", "xpath") self.assertFalse(el.is_displayed())
def test_find_element_by_model_exception(self): el = Element(self.driver, 'username', 'model') with self.assertRaises(SearchByElementException): el.web_element()
def test_get_tag_name(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//span[@id='checkValue']", 'xpath') self.assertEqual(el.tag_name, u'span')
def test_if_not_exists_element(self): el = Element(self.driver, "//div[@id='NOTEXIST']", 'xpath') self.assertFalse(el.is_present())
def test_find_element_by_model_exception_not_found(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, 'model_not_found', 'model') with self.assertRaises(NoSuchElementException): el.web_element()
def test_find_element_by_defualt_type(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//span[@id='radioValue']") self.assertEqual(el.search_by, 'xpath')
def test_selected_element(self): el = Element(self.driver, "//input[@ng-true-value='w']", 'xpath') el.click() self.assertTrue(el.is_selected())
def test_move_to_next_element_from_element(self): el = Element(self.driver, "//input[@ng-true-value='w']", 'xpath') el.move_to_element() self.assertFalse(el.is_selected())
def test_get_css_property_element(self): el = Element(self.driver, "//div[@id='checkboxes']", 'xpath') self.assertEqual(el.value_of_css_property('text-decoration'), u'none')
def test_get_element_type_element(self): el = Element(self.driver, "//div[@id='checkboxes']", 'xpath') self.assertEqual(el.element_type, 'element')
def test_get_text_name_element(self): el = Element(self.driver, "//div[@id='checkboxes']", 'xpath') self.assertEqual(el.text, u'Checkboxes\nShow? Shown!! W X Y Z')
def test_get_tag_name_element(self): el = Element(self.driver, "//div[@id='checkboxes']", 'xpath') self.assertEqual(el.tag_name, u'div')
def test_get_element_type_element(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//span[@id='checkValue']") self.assertEqual(el.element_type, 'element')
def test_find_element_by_exception_not_supported(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, 'greeting', 'notsupported') with self.assertRaises(SearchByElementError): el.web_element()
def test_find_element_by_xpath(self): self.driver.get(self.base_url + '/index.html#/form') el = Element(self.driver, "//span[@id='checkValue']", 'xpath') self.assertIsInstance(el.web_element, WebElement)
def test_find_element_by_xpath_exception_not_found(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//span[@id='xpath_not_found']", 'xpath') with self.assertRaises(NoSuchElementException): el.web_element()
def test_exists_element(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//span[@id='checkValue']", 'xpath') self.assertTrue(el.is_present())
def test_find_element_by_default(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//span[@id='checkValue']") self.assertIsInstance(el.web_element, WebElement) self.assertEqual(el.search_by, 'xpath')
def test_if_exists_element(self): el = Element(self.driver, "//div[@id='checkboxes']", 'xpath') self.assertTrue(el.is_present())
def test_find_element_by_model(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, 'appCtrl.checkField', 'model') self.assertIsInstance(el.web_element, WebElement)
def test_get_element_text(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "appCtrl.textFieldFull", "exact_binding") self.assertEqual(el.text, u'Hello World')
def test_if_not_exists_element(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//div[@id='NOTEXIST']", 'xpath') self.assertFalse(el.is_present())
def test_move_to_element(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "//span[@id='textValueFull']", 'xpath') self.assertEqual(el.value_of_css_property('color'), u'rgba(255, 0, 0, 1)') el.move_to_element() self.assertEqual(el.value_of_css_property('color'), u'rgba(0, 0, 0, 1)')
def test_get_attribute_element(self): self.driver.get(self.base_url + '/index.html') el = Element(self.driver, "appCtrl.checkField", "model") self.assertEqual(el.get_attribute('type'), u'checkbox')
def test_click_element(self): self.driver.get(self.base_url + '/index.html') checkbox_el = Element(self.driver, "appCtrl.checkField", "model") checkbox_el.click() self.assertTrue(checkbox_el.is_selected())