如果你还想从头学起Robot Framework,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1770899.html

什么是用户关键字

  • 类似 Python 里面的函数,我们自定义函数,等于我们自定义关键字,也称为用户关键字
  • *** Keywords *** 表放的就是用户关键字

定义用户关键字的简单栗子

等价于 Python 里面:定义函数,调用函数

def add(a, b):
return a + b if __name__ == '__main__':
print(add(1, 1))

*** Keywords *** 表中的设置项

  1. [Documentation]
  2. [Tags]
  3. [Arguments]
  4. [Return]
  5. [Teardown]
  6. [Timeout]

用户关键字的参数详解

  • 参数通过 [Arguments] 设置, 参数名称的语法格式和 变量 一样, 如  ${arg}
  • 其实用户关键字的参数列表就等同于 Python 函数的参数列表,只是写法变了而已

位置参数

等价于 Python

其实就是最简单的函数声明了

def one(arg1):
print(arg1) def Three(arg1, arg2, arg3):
print(arg1)
print(arg2)
print(arg3)

默认值参数

测试结果

等价于 Python

就是给参数设置默认值嘛,看 Python 代码的话应该很好理解吧;不过要注意 Python 函数的参数间不可以想相互赋值

def onedefault(arg="默认值"):
print(arg) default = "默认默认值" def threedefault(a, b="a", c=default):
print(a)
print(b)
print(c)

重点知识点

默认值的语法是对空格敏感的,等号 = 前面不允许有空格,而=后面的空格则被视作默认值的一部分

可变参数

用 @{args} 声明参数时,就是代表可变参数,可以接受不定数量的参数,跟 Python 的可变参数一个意思

测试结果

等价于 Python

def args_one(*args):
for i in args:
print(i) def args_default(a, b=1, *args):
print(a)
print(b)
for i in args:
print(i)

关键字参数

用  &{args} 声明参数时,就是代表关键字参数,可以接受不定数量的关键字参数,跟 Python 的关键字参数一个意思

测试结果

等价于 Python

# 关键字参数
def kwargs_demo(arg, **kwargs):
print(arg)
for k, v in kwargs.items():
print(k, v)

Robot Framework(11)- 用户关键字的详解的更多相关文章

  1. Robot framework(RF) 用户关键字

    3.6  用户关键字 在Robot Framework 中关键字的创建分两种:系统关键字和用户关键字. 系统关键字是需要通过脚本开发相应的类和方法,从而实现某一逻辑功能. 用户关键字是根据业务的需求利 ...

  2. Robot Framework(用户关键字)

    在 Robot Framework 中关键字的创建分两种:系统关键字和用户关键字.系统关键字需要通过脚本开发相应的类和方法,这个我们将在后面的章节介绍.用户关键字的创建就要简单得多,它主要利用现有的系 ...

  3. Robot Framework自动化_Selenium2Library 关键字

    Robot Framework自动化_Selenium2Library 关键字 培训老师:肖能尤 2016/06/12 课程目的 一.Robot framework Selenium2Library ...

  4. Linux 用户及权限详解

    Linux 用户及权限详解 用户 , 组 ,权限 安全上下文(secure context): 权限: r,w,x 文件: r : 可读,可以使用类似cat 等命令查看文件内容. w : 可写,可以编 ...

  5. ava下static关键字用法详解

    Java下static关键字用法详解 本文章介绍了java下static关键字的用法,大部分内容摘自原作者,在此学习并分享给大家. Static关键字可以修饰什么? 从以下测试可以看出, static ...

  6. Linux 系统的用户和组详解_【all】

    1.Linux 用户和用户组详解 2.Linux 文件特殊权限详解 3.Linux 文件的读写执行权限的说明 4.Linux 架构之简述企业网站 5.Linux 环境变量设置详解 6.企业生产环境用户 ...

  7. Java并发关键字Volatile 详解

    Java并发关键字Volatile 详解 问题引出: 1.Volatile是什么? 2.Volatile有哪些特性? 3.Volatile每个特性的底层实现原理是什么? 相关内容补充: 缓存一致性协议 ...

  8. 11、mysql索引详解

    1.索引介绍: 2.建立索引的方法: 注意:索引名称不要相同: (1)在建表的时候,可以增加主键索引的语句如下: 1)例一: create table student1 ( id int(4) not ...

  9. Linux 用户和用户组详解

    用户分类 超级用户:UID范围 0 root用户:uid=0(root) gid=0(root) groups=0(root) 普通用户:由管理员创建,UID范围(500-65535) --> ...

随机推荐

  1. 历史上的今天mysql数据库包含详情分类以及图片

    历史上的今天mysql数据库包含详情分类以及图片 https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.50111debo71iaJ& ...

  2. Codeforce-CodeCraft-20 (Div. 2)-C. Primitive Primes(本原多项式+数学推导)

    It is Professor R's last class of his teaching career. Every time Professor R taught a class, he gav ...

  3. MySQL命令1

    开始学习MySQL. // 创建数据库 CREATE DATABASE db_name; // 删除数据库 DROP DATABASE db_name; // 显示数据库 SHOW DATABASES ...

  4. P1191 矩形

    ------------恢复内容开始------------ 题意 给出一个\(n*n\)的矩阵,矩阵中,有些格子被染成白色,有些格子被染成黑色,现要求矩阵中白色矩形的数量 分割线 Ⅰ.暴力出奇迹!! ...

  5. print函数的全面认识

    # 输出打印 数字 print(123) a = 100 print(a) # 输出打印 字符串 print('字符串123') print('''锄禾日当午 汗滴禾下土''') # 输出打印 列表 ...

  6. 王颖奇 20171010129《面向对象程序设计(java)》第十六周学习总结

    实验十六  线程技术 实验时间 2018-12-8 理论部分: 并发⚫ 线程的概念⚫ 中断线程⚫ 线程状态⚫ 多线程调度⚫ 线程同步 1.线程的概念 程序是一段静态的代码,它是应用程序执行的蓝本. 进 ...

  7. C#学习笔记——数据类型

    数据类型 sbyte x; //8bit,有符号,表示-128~127 bite x; //8bit,无符号,表示0~255 short x; //16bit,有符号整型 ushort x; //16 ...

  8. 设计模式之GOF23装饰模式

    装饰模式decorator 作用: -动态的为一个对象增加新功能 -装饰模式是一种用于代替继承的技术,无需通过增加子类就能扩展对象的新功能,适用对象的组合关系代替继承关系,更加灵活,同时避免类型体系的 ...

  9. [hdu5255]枚举

    思路:这题与csu1392题目类似,方法类似.枚举最高位,最低位和中间数字的长度,然后列等式,计算中间的数字,看长度是不是跟枚举的一致,需要注意的是中间数字可以有前导0,如果根据等式算出来的中间数字为 ...

  10. fakebook

    0x01 查看robots.txt 发现user.php.bak文件 得到源码 <?php class UserInfo { public $name = ""; publi ...