判断应用程序元素是否存在,之前使用的代码如下,但是页面跳转后,通过xpath查找信息能查找到跳转前页面的内容,造成信息判断不准确。
def isElementPresent(self, driver, xpath):
# 从selenium.common.exceptions 模块导入 NoSuchElementException类
from selenium.common.exceptions import NoSuchElementException
try:
element = driver.find_element_by_xpath(xpath)
# 原文是except NoSuchElementException, e:
except NoSuchElementException as e:
# 打印异常信息
print(e)
# 发生了NoSuchElementException异常,说明页面中未找到该元素,返回False
return False
else:
# 没有发生异常,表示在页面中找到了该元素,返回True
return True
于是更换判断方法,如下: 如果点击元素判断元素是否报错,判断页面跳转成功
1 @allure.step("判断元素是否可以点击")
2 def isElementCanClick(self, xpath, driver):
3 # 判断页面
4 flag = False
5 try:
6 driver.find_element_by_xpath(xpath).click()
7 flag = True
8 return flag
9 except:
10 return flag
问题重现
通过driver.page_source 查看可以取到的元素,再结合xpath检验
技术行业,一定要提升技术功底,丰富自动化项目实战经验,这对于你未来几年职业规划,以及测试技术掌握的深度非常有帮助。
金九银十面试季,跳槽季,整理面试题已经成了我多年的习惯!下面有我近几年的收集和整理,整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。
对于软件测试的的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你!
愿你我相遇,皆有所获! 欢迎关注微信公众号:【伤心的辣条】 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!