UI自动化封装:判断元素存在
判断一个元素是否存在,搜索了半天没有找到,原来这个方法在selenium里面是没有的,那就需要自己写了
思路:写一个函数进行判断,如果找到返回Ture,没找到就返回False
def is_element_exist(css): s = driver.find_elements_by_css_selector(css_selector=css) if len(s) == 0: print "元素未找到:%s"%css return False elif len(s) == 1: return True else: print "找到%s个元素:%s"%(len(s),css) return False
实例:
from selenium import webdriver driver = webdriver.Firefox() driver.implicitly_wait(10) driver.get("http://www.baidu.com") def is_element_exist(css): s = driver.find_elements_by_css_selector(css_selector=css) if len(s) == 0: print "元素未找到:%s"%css return False elif len(s) == 1: return True else: print "找到%s个元素:%s"%(len(s),css) return False # 判断页面上有无id为kw的元素 if is_element_exist("#kw"): driver.find_element_by_id("kw").send_keys("yoyoketang") # 判断页面有无标签为input元素 if is_element_exist("input"): driver.find_element_by_tag_name("input").send_keys("yoyoketang") # 判断页面有无id为xxx的元素 if is_element_exist("xxx"): driver.find_element_by_id("xxx").send_keys("yoyoketang") def isElementExist(css): try: driver.find_element_by_css_selector(css) return True except: return False print isElementExist("#xxx")
方法二:
from selenium import webdriver driver = webdriver.Chrome() driver.get('') result = driver.find_element_by_id().text #转换成文本 assert '百度一下'==result,f'返回值文本与实际不一致,返回值为:{result}'
本文来自博客园,作者:他还在坚持嘛,转载请注明原文链接:他还在坚持嘛 https://www.cnblogs.com/brf-test/p/16259988.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架