robotframework5-化境

robotframework5-化境

讲解robot用例编写规范。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
附件内容:

Robot脚本编写规范
前言:
为了保证脚本的易读性,可维护性,稳定性,以及提高脚本的美观度,运行性能和保证日志报告的清晰明了等,特制定这一系列规则来统一大家的编写风格。

1、变量规范
强制要求:
1、全局变量必须全部大写
2、除了循环索引变量外,变量名称不能全英文,不能含有符号,中英文混合时英文大写,可以全中文,但长度不应超过9
3、变量名称要见名知意,必须是名词或含修饰的名词,不能是动词或使动结构
4、除suite定义的List和字典变量使用@和&申明,脚本中一律使用$申明
5、不轻易将变量设为全局变量
6、variables导入的py文件中定义的变量必须大写,且在py文件中变量定义的上一行加注释
7、不要使用魔鬼数字,使用前应初始化为变量

建议:
1、不要通过变量加序号来表示不同变量,如 日 期 1 , {日期1}, 1{日期2}
2、赋值操作时不要在变量后加 “=” 符号
3、建议变量命名时说明变量的类型,如${二维结果列表}
4、suite级变量加注释,说明作用和影响
5、必要的、只能外部传入的、跟环境强相关的默认变量才使用py文件定义

2、关键字规范
强制要求:
1、 RF端自定义关键字名称不能全英文,不能含有符号,中英文混合时英文大写,可以全中文,但长度不应超过11
2、 RF调用库的关键字时,首字母大写,每个单词间空一格,不要下划线和多余空格。唯一正确格式:Run Keyword If。错误格式如: run keywor if, Run keywor if, runkeywor if, RunKeyworIf, Run_keywor_if
3、 自定义库的关键字必须在RF端封装一层自定义关键字后调用
4、 不要定义名称相同的自定义关键字,不同suite也不允许
5、 关键字命名要见名知意,必须含动宾结构,必须表达这个关键字干了什么,名称太长时可以不管它如何去做;如:打开浏览器,校验结果,使用xxx执行xxx
建议:
1、基本功能的关键字放在外部源定义,以便给多个suite调用
2、关键字传参时按位传时不用写明形参

3、资源导入规范
强制要求:
1、除基本功能库放在外部资源文件,每个suite都默认导入外,其他第三方库和自定义库遵循最小导入原则,需要哪些子级库就导入那些库
2、资源文件不要循环引用
3、使用相对路径导入库和资源文件,以便脚本在不同环境下都能运行
4、资源文件应按类型分类存放,如操作的关键字定义在一个资源文件,操作的对象元素定义在一个资源文件

4、标签管理规范
强制要求:
1、标签必须大写,下划线拼接,可以有数字编号,不能全数字,不能含有符号
2、Suite加强制标签,每个用例单独加唯一的标签
3、未启用的,暂时未确定的用例标:UNREADY
4、未完全自动化用例标:SEMI_AUTO
5、导致执行卡死、环境破坏到影响其他测试用例的用例标:BLOCK

5、用例结构规范
强制要求:
1、suite目录和文件名称不要含中括号和-以外的符号,不要超过20个字符,且统一使用robot格式
2、用例名称不要含中括号和-以外的符号,且不要超过40个字符
3、用例的前提条件、步骤、预期结果描述放case的document
4、模块公用的前提条件关键字放suited的setup;前提描述放suite的document
5、测试用例的界面, 没有复杂的逻辑,如FOR循环,基本全是关键字和参数组成的关键步骤,保证高可读性

6、流程控制规范
强制要求:
1、用例和用例不能存在先后关联,必须有环境准备和环境还原,不能互相影响
2、suite和suite不能存在先后关联,必须有环境准备和环境还原,不能互相影响
3、凡是网络连接的,文件操作相关的,有open或crate链接窗口等,则要最后保证CLOSE一定会被执行
4、简单易懂的操作不要加注释
5、循环内的步骤应尽量简单明了,复杂步骤封装成自定义关键字
建议:
1、应尽量使用内置库的方法来代替使用python语法
2、四层及以上的循环操作,使用python方法实现了在RF调用
3、不要重复造轮子, 封装方法时考虑通用性
4、避免使用Sleep不确定的时间,除非用例明确要求响应时间

7、日志打印规范
强制要求:
1、不Log信息
2、图片在Log中等使用超链接,不要直接展示
3、结果校验时,报错信息应详细说明期望结果是xxx, 实际结果是xxx
4、尽量不返回超过1M数据量的字符串
8、脚本维护修改规范
强制要求:
1、分析日志后,导致执行卡死、环境破坏到影响其他测试用例的,暂时未找到原因并解决的用例标明BLOCK
2、修改公共关键字时,只准在原先参数后加参数,且必须给默认值,默认值时新参数不影响老参数的功能
3、修改了公共关键字,在关键字的描述中加修改说明和修改人
4、不修改variable文件中的变量名称

建议:
1、不要轻易修改公共关键字的名称
2、不轻易修改资源文件和配置文件路径

常见英文缩写
英文 缩写 汉语意思
develop dev 开发
block blk 阻塞
memory mem 内存(一般用在全局或堆)
allocate alloc 分配
utility util 多功能
file pointer fp 文件句柄
extent ext 扩展
resource res 源
destination
dst 目的
event evt 事件
connect conn 连接
config cfg 配置
server srv 服务
address addr 地址
request req 请求
buffer buf 内存(一般用在局部或栈)
cache cach 缓存
response resp 回复
operation opt 操作
option opt 选项
project proj 项目
profession pro 高级的
information info 信息
value val 值
lenght len 长度
collection col 收集
column col 列
array ary 数组
iterator itr 迭代
source src 源
include inc 包括
decline dec 减少/下降
function func 功能/函数
action act 触发/执行
execute exec 执行
argument arg 参数
signal sig 信号
single sgl 单个
error err 错误
field field 片
property prop 特性
defines defs 明确
object obj 对象
system sys 系统
message msg 消息
document doc 文档
application app 应用
process proc 进程
dispatch disp 发送
internet inet 网络
context ctx 背景/描述
receive recv 接收
number num 数量
directory dir 目录
dictionory dict 字典
protocol proto 协议
index idx 索引
modify mod 修改
window wnd 窗口
button btn 按钮
table tbl 盒子
label lbl 标签
Image img 图片
Sprite sp 小精灵
text tex 文本
transform trans 转换
convert conv 转换
animation anim 动画
material mat 原料
vecter vec 媒介
position pos 位置
callback cb 回调
compare cmp 比较
copy cpy 拷贝
second sec 秒/第二的
distro distro 发布
Subitem sub 子项

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值