zoukankan      html  css  js  c++  java
  • robotframework使用笔记--持续更新

    1.在RF中ELSE 和ELSE IF必须要大写,小写识别不了
    2.在用autoitlibrary的过程中,必须需要等窗口先出现,才能进行后续的操作,否则将无法执行选择文件的操作,等待窗口出现的情况,可用如下方法:
    等待窗口出现的时间,也可以用sleep,如下:
    以上三种方法均可执行成功,需要注意的是,用sleep时,必须要等待的时间足够长才可,推荐用前面两种方法。
    PS:这些方法并不是必须的,有时候即使不用这些方法,也可以成功执行上传文件的操作,但最好使用其中一种方法,以防出现,在检测到窗口之前就去执行上传语音文件的操作。
    3.当ride窗口没有日志输出时,执行taskkill /f /im chromedriver.exe
    4.如果定位xpath时,遇到了瓶颈,不妨搜索一下 xpath轴的用法,会发现新世界的大门
      附个例子://a[text()='shangxian2']/following::td[@data-title="'操作'"]/a[@ng-click="editApp(app)"]
    5.运行以前跑通的用例,发现无法正常执行,提示找不到disconnected: unable to connect to renderer,这是因为电脑的谷歌浏览器版本和浏览器驱动版本对不上导致的,解决这个问题,只需要确定谷歌浏览器的版本(报错的时候有提示当前版本和需要的驱动版本),然后更新对应的浏览器驱动即可
    浏览器和驱动版本对应图:
    驱动下载地址(所有chromedriver均可在下面链接中下载到):
    6.一个新坑!!!
    在用AutoItLibrary库上传文件的时候,如果使用control send关键字,总是不能找到正确的路径!例如!!!在页面中需要上传图片时:
    必须要上一次上传的路径和脚本里面的路径保持一致!才能上传成功,如果上一次上传的路径和脚本的路径不一样,使用control send 会导致路径填写的不正确,
    如下图(以下只是其中一种情况,还有可能是别的,总之就是不能正确找到图片!):
    经查询得知,是因为ControlSend是在光标所在位置后添加(若控件当前未获取焦点则默认是在当前文本后附加),所以如果点击浏览按钮弹出的路径选择框,已经有上次上传的目录了,则会直接在当前目录的路径后添加目录,而且还受输入法的影响(send就跟手动输入类似,跟输入法有关联,如果你开着中文输入法, 就会变为 、)
    将ControlSend改成ControlSetText可以完美解决这个问题!!!如下:
    ControlSetText与ControlSend的区别在于:ControlSetText 会清除原有内容,而ControlSend是在光标所在位置后添加
     
    2018/4/2日编辑:
    使用AutoitLibrary库上传文件时,使用上述方法,经常会导致上传的路径和传入的不符(不完整,只取到一部分),原因未知,猜测可能是窗口还没激活就开始写目录,但没激活写不进去,等激活了目录没写完,于是截取剩下未写完的一部分。。。使用下述方法基本上不会出现:
  • 相关阅读:
    与您分享
    与您分享
    与您分享
    与您分享
    与您分享
    分享:PythonSIP 4.14.2 发布
    与您分享
    编码
    分享:C++十种方法"Hello World"
    与您分享
  • 原文地址:https://www.cnblogs.com/xiaoyinyue/p/8423108.html
Copyright © 2011-2022 走看看