我正在尝试对我公司的网站进行自动化测试。该代码通过了我的测试,但是却跳过了一步。应该首先从输入区域删除文本,然后在该位置添加一个新值。

我已经尝试单击输入区域,然后使用Delete Text Clear Element Text id=bankAccount.iban删除文本,但是它跳过了这一部分

这段代码来自机器人框架

*** Settings ***
Library           Selenium2Library

*** Variables ***
${Username}       [email protected]
${Password}       12345678
${Browser}        Chrome
${SiteUrl}        http://our.siteaddress.fi/flfuserct-style/login
${DashboardTitle}    Our title was here
${ExpectedWarningMessage}    IBAN is invalid
${WarningMessage}    Adding a new bank failed!
${BankIban}       FI2112345600000788 (((this is not a real IBAN, so don't worry)))
${Delay1}         3s
${Delay2}         1s
${Delay3}         2s
${Delay4}         2s
${Delay5}         3s
${Delay6}         1s


*** Test Cases ***
Login Should Complete Without Errors, But Changing To A New Bank Should Fail Via Invalid IBAN
    Open Page
    Check Title
    Enter User Name
    Enter Password
    Click Login
    sleep    ${Delay1}
    Click My Info
    sleep    ${Delay2}
    Click Bank Account
    sleep    ${Delay3}
    Click Edit
    sleep    ${Delay4}
    Delete Text
    sleep    ${Delay5}
    Enter IBAN
    Assert Warning Message
    sleep    ${Delay6}
    [Teardown]    Close Browser


*** Keywords ***
Open Page
    open browser    ${SiteUrl}    ${Browser}
    Maximize Browser Window

Check Title
    Title Should be    ${DashboardTitle}

Enter User Name
    Input Text    css=[type="text"]    ${Username}

Enter Password
    Input Text    css=[type="password"]    ${Password}

Click Login
    Click Button    css=[type="submit"]

Click My Info
    Click Element    id=my-info

Click Bank Account
    Click Link    css=[href="/flfuserct-style/users/me/bank-accounts/primary"]

Click Edit
    Click Element    css=.MuiButton-label

Delete Text
    Clear Element Text    id=bankAccount.iban

Enter IBAN
    Input Text    id=bankAccount.iban    ${BankIban}

Assert Warning Message
    Element Text Should Be    id=bankAccount.iban-helper-text    ${ExpectedWarningMessage}    ${WarningMessage}




而这个代码如果来自网站

<input aria-invalid="true" class="MuiInputBase-input MuiInput-input"
id="bankAccount.iban" name="bankAccount.iban" required="" type="text"
value="FI2112345600000788" aria-describedby="bankAccount.iban-helper-text">


机械手框架中的代码(https://imgur.com/RY7E5h6

日志中的代码(https://imgur.com/XESLljF

如果您可以看到这些图片(对不起,我是这里的新手),那么第一张是来自Robot Framework的,显示消息日志。如您所见,它顺利通过了测试,没有错误,但是它跳过了“清除元素文本”部分。

日志的第二张图片说:清除定位器标识的text-input-element的值。但这没有发生。它只是在现有的IBAN之后写入IBAN,并且应该将其删除。

另外,似乎我不能连续做3 *,但设置,变量,测试用例和关键字却获得3星

最佳答案

对于Delete Text关键字,我认为如果您使用类似

Input Text id=bankAccount.iban ${EMPTY}


这样,您实际上是将文本字段的字符串的值设置为空字符串,并且您确定它会起作用,因为相同的定位符和相同的方法(Input Text关键字)肯定会在下一步中起作用,以添加实际值(只是将其设置为Empty String而不是添加值)

08-08 00:20