正确使用与Click Button一起使用的语法

时间:2019-05-01 14:50:42

标签: selenium robotframework

我正在编写一个机器人框架/ Selenium测试脚本,以验证网站的登录过程。我无法获得正确的语法来自动按下登录按钮。这是机器人脚本:

*** Settings ***
Documentation     Project Automated Test
Library           SeleniumLibrary

*** Variables ***
${LOGIN URL}      http://localhost/project
${BROWSER}        Chrome

*** Test Cases ***
Valid Login
    Open Browser To Login Page
    Maximize Browser Window
    Welcome Page Should Be Open
    Login_User
    [Teardown]    Close Browser

*** Keywords ***
Open Browser To Login Page
    Open Browser    ${LOGIN URL}    ${BROWSER}

Welcome Page Should Be Open
    Page should contain  Project Tasks

Login_User
    Click Button  Login

这是“登录”按钮的代码:

<input class="btn" type="button" onclick="
                if(document.getElementById('authentication').style.display == 'none'){
                    $('#authentication').slideDown('slow');
                                    } else {
                    $('#authentication').slideUp('slow');
                }
                " href="#" value="Login">

脚本启动后,Chrome将打开并正确显示网页。我可以在网页上看到“登录”按钮。我已经尝试了Click Button定位器参数的各种组合(登录,值=登录,文本=登录)。每次尝试都会导致“找不到定位器的按钮”消息。这是我关于Robot Framework / Selenium的第一个项目,因此将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:2)

Third参数是您的locator,您可以使用id,name,xpath或css选择器。由于id和name不可用,您可以使用xpath或css选择器。

 Login_User
        Click Button  xpath://input[@class='btn'][@value='Login']

或CSS选择器

Login_User
        Click Button  css:input.btn[value='Login']

您可以参考以下robot framework文档。