您好,我正在使用selenium自动测试网页。我正在使用selenium 2和python,只希望在这个框架中有答案。那么,如何检查是否存在某些文本呢?我已经尝试了资产相等,但它不起作用?
assertEquals(driver.getPageSource().contains("email"), true);
发布于 2013-06-20 17:03:44
您可以使用driver.page_source
和一个简单的正则表达式来检查文本是否存在:
import re
src = driver.page_source
text_found = re.search(r'text_to_search', src)
self.assertNotEqual(text_found, None)
发布于 2015-06-16 16:53:17
你可以尝试像这样的东西
browser = webdriver.Firefox()
browser.get(url)
WebDriverWait(browser, 10).until(EC.element_to_be_clickable((By.LINK_TEXT, 'some link text')))
基本上,上面的代码行启动Firefox,导航到指定的url,使浏览器保持10秒,对于某些url加载,然后查找特定的链接文本,如果没有找到链接文本,则触发TimeoutException。
请注意使用的括号数量,如果括号的数量与上面的不一致,您将遇到错误。
为了能够运行上面的语句,必须声明以下内容
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
这使用了"element_to_be_clickable“-可以在这里找到等待条件的完整列表:Selenium Python: Waits
https://stackoverflow.com/questions/10978923
复制相似问题