Python Selenium Xpath 获取文本
Python Selenium Xpath get text
请问我如何在这个 xpath 中找到文本 Invalid email address.
:
driver.find_element_by_xpath(".//*[@id='create_account_error']/ol/li")
并用断言验证?
你可以查看这个网站 - http://automationpractice.com/index.php?controller=authentication
在 "CREATE AN ACCOUNT tab" 中输入错误的电子邮件地址,然后单击 "Create an account",您将看到一条错误消息。
如何使用 xpath 验证此错误消息以制作示例测试用例?
我给你的示例代码可以满足你的要求,相应地把它放在测试用例中。
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()
试试这个:
expected_text = 'Invalid email address.'
elem = driver.find_element_by_xpath(".//*[@id='create_account_error']/ol/li")
assert elem.text == expected_text
希望对您有所帮助。
请问我如何在这个 xpath 中找到文本 Invalid email address.
:
driver.find_element_by_xpath(".//*[@id='create_account_error']/ol/li")
并用断言验证?
你可以查看这个网站 - http://automationpractice.com/index.php?controller=authentication
在 "CREATE AN ACCOUNT tab" 中输入错误的电子邮件地址,然后单击 "Create an account",您将看到一条错误消息。
如何使用 xpath 验证此错误消息以制作示例测试用例?
我给你的示例代码可以满足你的要求,相应地把它放在测试用例中。
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()
试试这个:
expected_text = 'Invalid email address.'
elem = driver.find_element_by_xpath(".//*[@id='create_account_error']/ol/li")
assert elem.text == expected_text
希望对您有所帮助。