Robot Framework是一个基于Python可扩展地关键字驱动的测试自动化框架,Robot Framework被广泛地使用在端到端地验收测试以及验收测试驱动开发的过程中。
1.在RF中输入部分关键字的名称时,使用shift+control+空格可以延伸出所有相关的关键字
2.suit下打tag分为两种:一种是Force Tags,一种是Default Tags。
- Force Tags:suit下面所有的测试用例都被打上这个tag
- Default Tags:suit下面的测试用例如果没有打tag,就会用这个默认tag,如果打了tag,就用自己打的tag。
3.suite级别的两种setup/teardown与case级别的setup/teardown
- 在suite级别设置test setup/teardown会被case级别的setup/teardown给覆盖掉,需要注意这两者不能同时使用。
- suite级别的suite setup/teardown可以和case级别的setup/teardown同时使用。
4.在条件中判断两个字符串是否相等,用双引号把字符串括起来比较好,其中两个字符串相等使用'==',不等使用'<>'。
5.使用should contain 时,确保两边都是字符串,比如从字典中获取到一个value为list,想要比较该list是否包含某个字符串,可用双引号将该list括起来变为字符串,所包含的字符串不用括起来。
6.在RF中使用关键字跳过某个case的执行,可以在test 的setup中使用以下方式:
- Builtin.Pass Execution If 满足条件后,跳过该关键字后续的步骤
- pass execution if 'aaa'=='aaa' message_info
7. Exit For Loop If 满足条件后,跳出for循环
8.一些好用的关键字的总结
- Wait Until Keyword Succeeds A B C,在A所指定的一段时间内,每个B的时间来执行命令C,直到C成功为止,若在A所指定的一段时间内C都失败,则该关键字失败
- Run Keyword And Continue On Failure这个关键字可以让case在失败的时候继续往下跑,case状态也是fail的,但是会跑完所有步骤
- Run Keyword And Ignore Error 使用该关键字可以忽视该关键字后的命令执行结果,命令执行出错,不会影响case的结果
9.RF中的特殊变量
${EMPTY}/空字符串:空字符串是指在内存中分配了存储空间,只是值的长度是0,在RobotFramework中表示方法:'';
${None}/${null}:None与null是指没有在内存中分配空间的,所以是没有值的。
10.RF中的for循环
https://blog.csdn.net/mengfanbo123/article/details/9033645
其中,还有一个易混淆的点为:
不同list的表示方式,输出结果也不一样。