【问题标题】:Python Selenium Xpath get textPython Selenium Xpath 获取文本
【发布时间】:2017-04-07 05:39:57
【问题描述】:
【问题讨论】:
标签:
python
selenium
selenium-webdriver
xpath
ui-automation
【解决方案1】:
试试这个:
expected_text = 'Invalid email address.'
elem = driver.find_element_by_xpath(".//*[@id='create_account_error']/ol/li")
assert elem.text == expected_text
希望对你有帮助。
【解决方案2】:
我给你的示例代码可以满足你的需要,把它放在一个测试用例中。
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
url="http://automationpractice.com/index.php?controller=authentication"
driver =webdriver.Chrome()
driver.maximize_window()
driver.get(url)
driver.find_element(By.ID,'email_create').send_keys("This is Test")
driver.find_element(By.ID,'SubmitCreate').click()
WebDriverWait(driver,10).until(EC.presence_of_element_located((By.CSS_SELECTOR, "#create_account_error > ol > li")))
ele=driver.find_element(By.CSS_SELECTOR,'#create_account_error > ol > li')
assert ele.text == 'Invalid email address.'
driver.quit()