• 编写ui自动化问题总结


    xpath定位

    1、对于不好定位的元素,尽量不要使用parent等方式找父级、兄级进行定位,可以使用contains,或者加[1][2][3]进行定位;

    举例:String a="//div[contains(@class,'style_Titles') and contains(.,'数据服务')]";

    2、xpath路径中传入参数;

    public void clickButtonByNumber(String Number){
    twd.click(findBy.xpath,"//td[text()='"+number+"']//following-sibling::td//span[text()='查看']");
    }

    3、列表定位元素无法点击:有两层div,一层inner,一层outer,就是一层模板样式,一层具体数据覆盖模板样式,有时精确定位仅定位到outer,模板样式中的元素,所以无法点击到inner

    解决方法一:通过模糊定位方式同时找到outer和inner的元素,比如一页十列数据,有10个查看,会定位到20个,再加上排序,去点击。

    解决方法二:通过outer元素中的列表唯一订单号,反推出inner元素的列表序列号,再通过列表序列号,找到对应的列表操作按钮。

    4、尽量使用xpath进行定位;

    xpath不好定位时,考虑id定位等方式;

    xpath不好定位时,键盘操作也是较好的办法;

    xpath不好定位页面靠下方的图标时,考虑使用键盘操作,先将网页拉到最下面,再xpath定位点击。

    其他

    1、显性等待、隐性等待都有的情况下,仍可能出现页面元素加载未成功的情况,可以再加上sleep,硬性等待;

    2、打开某一个页面后,再刷新一次,再进行等待;

    3、改变assert判定方式或者改变判定元素;

    4、每个用例运行完成后,重新开关浏览器,避免一个用例失败后,之后的步骤均无法执行的情况;

    5、新开页面了,记得切换handle句柄,否则无法定位到元素!!!

  • 相关阅读:
    安装和使用 PyInstaller 遇到的问题
    Mininet 系列实验(七)
    Mininet 系列实验(六)
    Mininet 系列实验(五)
    Mininet 系列实验(三)
    Mininet 系列实验(一)
    Linux进程间通信(消息队列/信号量+共享内存)
    bugku 输入密码查看flag
    bugku 头等舱
    bugku 你必须让他停下
  • 原文地址:https://www.cnblogs.com/hushuer/p/14291910.html
Copyright © 2020-2023  润新知