我正在尝试对我公司的网站进行自动化测试。该代码通过了我的测试,但是却跳过了一步。应该首先从输入区域删除文本,然后在该位置添加一个新值。
我已经尝试单击输入区域,然后使用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而不是添加值)