Robot Framework经验谈 - 一个关键字在页面上导航(多次点击跳转)

一般写web自动化的时候都有个点击导航到目标页面的过程,本tip展示了一种简答有效率的办法。


定义关键字如下:

Goto - ${target}
    @{gui_path}    Split String    ${target}    ${SPACE}>${SPACE}
    : FOR    ${gui_text}    IN    @{gui_path}
    \    Wait Until Page Contains    ${gui_text}
    \    Sleep    0.2
    \    Click Element    xpath=//*[normalize-space(text())="${gui_text}"]

使用举例:

*** Test Cases ***
zte
    Open Browser    http://www.cnbeta.com    ff
    Goto - 主题 > z > ZTE 中兴
    Close Browser

解释:

1. Robot Framework关键字名字里面是可以放一个或者多个参数的,前提是不得有其他常规参数,这样关键字名字可以变化,比如本例;

2. xpath可以按*[text()="xxx"]寻找元素,Click Element会要求它返回第一个并点击。若你有多个相同text的而想点击其中某个,请想法让它的text与众不同,或者:

3. 重写上面的关键字,用相对路径,部分匹配*[contains(text(),"xxx")], 或者Get Webelements返回list按下标取值;

4. 即使text()属于span之类的元素,也是可以点击的,因为点击会传递给其上层button,link之类的元素,所以用Click Link不行但是Click Element可以

你可能感兴趣的:(自动化测试,Robot,Framework)