zoukankan      html  css  js  c++  java
  • appium+selenium自动化测试UI踩坑记录之--判断元素是否存在

    1.判断应用程序元素是否存在,之前使用的代码如下,但是页面跳转后,通过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检验

    
    
    
    
    

  • 相关阅读:
    get请求乱码情况
    write()和prinln()的区别?
    校验码实现
    下载图片代码并且解析乱码
    servlet下根据相对路径找资源
    url-pattern配置
    获取网站资源 getResourceAsStream
    Servlet线程安全性
    http1.1 协议响应方面参数
    HTTP1.1协议请求方面参数
  • 原文地址:https://www.cnblogs.com/quwujin/p/14103171.html
Copyright © 2011-2022 走看看