51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2985|回复: 12
打印 上一主题 下一主题

请教,rf自动化测试如何定位对话框的确定,取消按钮,xpath获取每次都在变化

[复制链接]
  • TA的每日心情
    开心
    2017-4-17 09:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    跳转到指定楼层
    1#
    发表于 2017-4-11 16:13:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    选择复选按钮后,弹出的对话框有3层div,确定取消在这一层如下:
    <div class="ui-dialog-buttonpane ui-widget-content ui-helper-clearfix">
    <div class="ui-dialog-buttonset">
    <button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" type="button" role="button">
    <span class="ui-button-text">确定</span>
    </button>
    <button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" type="button" role="button">
    <span class="ui-button-text">取消</span>
    </button>
    </div>
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    该用户从未签到

    2#
    发表于 2017-4-11 22:50:20 | 只看该作者
    1、最简单的就是  //span[text()='确定'], 但是可能页面存在重复元素
    2、往上找到一个元素(某个属性唯一、不动态变化的),定位到此元素后,然后通过父级、子级等,用相对路径或绝对路径,定位到确定,取消

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 积极回复获得测试积点10 赶快去商城换取奖.

    查看全部评分

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    昨天 06:43
  • 签到天数: 2033 天

    连续签到: 1 天

    [LV.Master]测试大本营

    3#
    发表于 2017-4-12 09:21:01 | 只看该作者
    试试这个:driver.find_element_by_xpath("//button[text()='确定']").click(),这个是pyhon+selenium。但转换成RF,也是可以是的,定位元素总是变,主要是元素是动态的,很有可能该元素在其它地方也有引用。仅供参考

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 积极回复获得测试积点10 赶快去商城换取奖.

    查看全部评分

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    昨天 06:43
  • 签到天数: 2033 天

    连续签到: 1 天

    [LV.Master]测试大本营

    4#
    发表于 2017-4-12 09:22:00 | 只看该作者
    我也遇到过用xpath定位就是无法定位。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-17 09:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    5#
     楼主| 发表于 2017-4-12 10:24:07 | 只看该作者
    cq520131517 发表于 2017-4-12 09:21
    试试这个:driver.find_element_by_xpath("//button[text()='确定']").click(),这个是pyhon+selenium。但转 ...

    这个是python的语法吧。怎么转换到rf呢,谢谢了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    昨天 06:43
  • 签到天数: 2033 天

    连续签到: 1 天

    [LV.Master]测试大本营

    6#
    发表于 2017-4-12 11:16:01 | 只看该作者
    你用的是robotFramework?如果是,就用xpath=//button[text()='确定']试试
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-17 09:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    7#
     楼主| 发表于 2017-4-12 15:24:34 | 只看该作者
    cq520131517 发表于 2017-4-12 11:16
    你用的是robotFramework?如果是,就用xpath=//button[text()='确定']试试

    就是用的robotFramework,还是无法定位到啊。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    昨天 06:43
  • 签到天数: 2033 天

    连续签到: 1 天

    [LV.Master]测试大本营

    8#
    发表于 2017-4-12 16:06:14 | 只看该作者
    用xpath=//span[text()='确定'],我刚才没有注意你是span,而不是button
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-17 09:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    9#
     楼主| 发表于 2017-4-12 16:31:31 | 只看该作者
    cq520131517 发表于 2017-4-12 16:06
    用xpath=//span[text()='确定'],我刚才没有注意你是span,而不是button

    这个我试过啊,也不行呢
    test                                                                                                      | FAIL |
    ValueError: Element locator 'XPath=//span[text()='确定']' did not match any elements.
    我也按照这个文章搞了,还是不行,http://blog.sina.com.cn/s/blog_911313ce0102x6sq.html
    test                                                                                                      | FAIL |
    ElementNotVisibleException: Message: Element is not currently visible and so may not be interacted with
    Stacktrace:

    @{b} get window handles

    log  @{b}

    select window by handle   ${b[0]}
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-17 09:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    10#
     楼主| 发表于 2017-4-13 09:16:05 | 只看该作者
    <div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-front umapDialog-no-close ui-dialog-buttons"
    style="display: block; top: 249px; left: 537px; height: auto; width: 350px;" tabindex="-1" role="dialog"
    aria-describedby="ui-id-1" aria-labelledby="ui-id-2">
    <div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
    <div id="ui-id-1" class="ui-dialog-content ui-widget-content" style="display: block;
    width: auto; min-height: 0px; max-height: none; height: 95.2px;">
    <div class="ui-dialog-buttonpane ui-widget-content ui-helper-clearfix">
    </div>
    我把弹出的对话框全部贴出来
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-17 09:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    11#
     楼主| 发表于 2017-4-13 09:17:46 | 只看该作者
    <div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-front umapDialog-no-close ui-dialog-buttons" style="display: block; top: 249px; left: 537px; height: auto; width: 350px;" tabindex="-1" role="dialog" aria-describedby="ui-id-1" aria-labelledby="ui-id-2">
    <div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
    <span id="ui-id-2" class="ui-dialog-title">提示信息</span>
    <button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only ui-dialog-titlebar-close" type="button" role="button" title="Close">
    </div>
    <div id="ui-id-1" class="ui-dialog-content ui-widget-content" style="display: block; width: auto; min-height: 0px; max-height: none; height: 95.2px;">
    <span class="glyphicon glyphicon-question-sign" style="float:left; margin:3px 7px 50px 0;"></span>
    是否确定删除该记录
    </div>
    <div class="ui-dialog-buttonpane ui-widget-content ui-helper-clearfix">
    <div class="ui-dialog-buttonset">
    </div>
    </div>
    我把弹出的对话框全部贴出来
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-4-17 09:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    12#
     楼主| 发表于 2017-4-13 09:20:23 | 只看该作者
    没贴全,再贴下
    <div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-front umapDialog-no-close ui-dialog-buttons" style="display: block; top: 249px; left: 537px; height: auto; width: 350px;" tabindex="-1" role="dialog" aria-describedby="ui-id-1" aria-labelledby="ui-id-2">
    <div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
    <span id="ui-id-2" class="ui-dialog-title">提示信息</span>
    <button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only ui-dialog-titlebar-close" type="button" role="button" title="Close">
    </div>
    <div id="ui-id-1" class="ui-dialog-content ui-widget-content" style="display: block; width: auto; min-height: 0px; max-height: none; height: 95.2px;">
    <span class="glyphicon glyphicon-question-sign" style="float:left; margin:3px 7px 50px 0;"></span>
    是否确定删除该记录
    </div>
    <div class="ui-dialog-buttonpane ui-widget-content ui-helper-clearfix">
    <div class="ui-dialog-buttonset">
    <button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" type="button" role="button">
    <span class="ui-button-text">确定</span>
    </button>
    <button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" type="button" role="button">
    <span class="ui-button-text">取消</span>
    </button>
    </div>
    </div>
    </div>
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-23 08:31 , Processed in 0.071382 second(s), 26 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表